【发布时间】:2011-09-17 14:42:36
【问题描述】:
我正在使用 Ruby on Rails 3.0.9 和 RSpec 2。我知道使用 RSpec 和 before_validation 回调存在一些已知问题,因为 before_validation 似乎没有被触发 在规范文件中运行时。你可以找到很多类似的问题(例如,通过Google search)。
我想知道,此时,是否有人提出了解决此问题的方法?
P.S.:我读到有些人建议使用模拟,有些人建议从 before_validation 切换到其他回调(例如:到 before_save)或使用save(:validate => false) 方法(所以跳过验证)......等等......但似乎没有人解决“真正的”问题。 您认为在这种情况下应该怎么做才能解决问题?
【问题讨论】:
-
没有理由在测试中不触发
before_validation——模型测试在设置过程中没有做任何特别的事情。老实说,我认为人们不知道如何编写这些测试。您有想要通过的测试吗? -
+1 举例说明什么不起作用。给我们一个带有 before_validation 检查的简单模型,以及您为验证它而编写的规范。
-
stackoverflow.com/questions/7361036/… 你打电话给 .valid 了吗?
标签: ruby-on-rails ruby ruby-on-rails-3 validation rspec