我正在尝试在 Rails 中进行测试。
在我的一个模型中,我有after_validation :grab_external_stuff
. grab_external_stuff
是一种调用外部 API 的方法。我不想在我的测试中运行它。
after_validation
在我的测试中禁用此方法的正确方法是什么?我该怎么做(使用 rspec)?我在哪里做呢?
我知道存根可用于停止调用方法。但我正在努力了解如何将其应用于 after_validation 或类似的钩子。
例如,假设我有一个任务,属于一个项目,属于一个用户。我运行一个工厂(:任务),它也在创建关联的项目和用户。但是当用户被验证时,grab_external_stuff 被调用。
那么在我的测试中应该在哪里指定我不想运行这个方法呢?在测试中,在工厂中,还是在其他地方?
感谢您的任何建议。