Hiho,
У меня есть следующий тест:
test "should annoy Chuck Norris" do
son = Factory.build(:son)
assert_difference('Son.count') do
post :create, son: { asset: son.asset, chuck_id: son.chuck }
end
assert_redirected_to chuck_path(assigns(son.chuck))
assert_equal 'The world has been destroyed...', flash[:notice]
end
assigns(son.chuck)
не работает, когда я пытаюсь son.chuck
, он работает, но после запуска всех моих тестови при создании некоторых Chucks
, Factory.build(:son)
создается Chuck
с идентификатором 12
, а assert_redirected_to
отправляют идентификатор 1
.В результате следующая ошибка:
Expected response to be a redirect to <http://test.host/chucks/12> but was a redirect to <http://test.host/chucks/1>
/Users/edison/.rvm/gems/ruby-1.9.2-p180/gems/actionpack-3.1.0.rc4/lib/action_dispatch/testing/assertions/response.rb:67:in `assert_redirected_to'
Так как я могу получить правильный Chuck.id
?