setup do
@prayer = prayers(:one)
end
test "should update prayer count" do
assert_difference('@prayer.count', 1) do
get "update_counter", {:id => @prayer.id}
end
assert_redirected_to root_path
end
# Running tests:
counter updated and saved. Count is:
1
F
Finished tests in 1.374664s, 0.7275 tests/s, 0.7275 assertions/s.
1) Failure:
PrayersControllerTest#test_should_update_prayer_count [test/controllers/prayers_controller_test.rb:147]:
"@prayer.count" didn't change by 1.
Expected: 1
Actual: 0update_counter特性运行良好,报告正确,但测试失败。@祈祷变量是指向数据库还是指向某个单独的治具对象?我也尝试过@祈祷= Prayer.find(1),但结果是一样的。有什么想法吗?
固定设备yml是:
one:
id: 1
prayer: Pray for nice weather
count: 0
user_id: 1谢谢。
发布于 2013-10-09 22:10:59
您可以尝试reload方法:
assert_difference('@prayer.reload.count', 1) do这导致Rails重新加载@prayer,从DB获取实际数据。
https://stackoverflow.com/questions/19282788
复制相似问题