【发布时间】:2018-09-06 15:26:39
【问题描述】:
我正在成功测试 ActiveRecord 模型的某些属性是否已更新。我还想测试只有那些属性发生了变化。我希望我可以使用模型的 .changes 或 .previous_changes 方法来验证我希望更改的属性是唯一被更改的属性。
更新
寻找与以下等效的东西(不起作用):
it "only changes specific properties" do
model.do_change
expect(model.changed - ["name", "age", "address"]).to eq([])
end
【问题讨论】:
-
如果你投反对票,我很想知道为什么。如果这是一个出于某种根本原因不应该编写的测试,我和其他人可能会从学习原因中受益。如果是因为问题的编写方式,请分享您的不满,以便我改进。
标签: ruby-on-rails rspec rspec-rails