更好的方法来测试rails counter cache?

时间:2014-01-29 06:49:54

标签: ruby-on-rails ruby-on-rails-3 rspec ruby-on-rails-4

在RSpec中测试rails计数器缓存是否有更好/更简单的方法:

let(:question) { create(:question) }

it "has a counter cache" do
  expect {
    create(:answer, question_id: question.id, user_id: question.user.id)
  }.to change {
    question.reload.answers_count
   }.by(1)
end

此外,在工厂使用#create代替#build是一种好习惯吗?因为只是构建它会引发错误(因为工厂的必需字段不会被构建设置)。

0 个答案:

没有答案