如何模拟属性的validates :name, uniqueness: true
回调?
我想它会这样工作:
describe "with duplicate name" do
before { mock(subject.name).unique? { false } }
it "should be invalid" do
subject.should have(1).error_on(:name)
end
为什么不使用should匹配器?有了它,您可以用it { should validate_uniqueness_of(:name) }
这样的一行代码测试标准的公共轨道功能。我发现它可读性更强,不需要模拟回调和准备测试用例