在我的代码中,我使用Shoulda匹配器进行了以下验证,它工作得很好:
it { should validate_presence_of(:name) }在我的模型中,我已经将条件添加到我的验证中:
validates_presence_of :name, :if => eligible?是否有可能将其反映在验证中?
我试着在documentation上寻找shoulda匹配器,但没有找到解决方案。
非常感谢!
发布于 2012-12-11 10:48:19
看起来shoulda_matchers并不能做到这一点,但它很容易自己编写::
context "if eligible" do
before { allow(subject).to receive(:eligible?).and_return(true) }
it { should validate_presence_of(:name) }
end
context "if ineligible" do
before { allow(subject).to receive(:eligible?).and_return(false) }
it { should_not validate_presence_of(:name) }
endhttps://stackoverflow.com/questions/13812717
复制相似问题