После завершения листинга Listing 10.40 и работает Rspec /spec/controllers/users_controller_spec.rb, я получил 1 отказ в разделе (все остальные тесты в разделе «уничтожить» пропускаются)Рубин на Rails Tutorial раздел 10.4.2 Испытание терпеть неудачу
describe "DELETE 'destroy'" do
before(:each) do
@user = Factory(:user)
end
describe "as a non-signed-in user" do
it "should deny access" do
delete :destroy, :id => @user
response.should redirect_to(signin_path)
end
end
end
Вот консольный вывод:
Failures:
1) UsersController DELETE 'destroy' as a non-signed-in user should deny access
Failure/Error: delete :destroy, :id => @user
undefined method `admin?' for nil:NilClass
# ./app/controllers/users_controller.rb:66:in `admin_user'
# ./spec/controllers/users_controller_spec.rb:282:in `block (4 levels) in <top (required)>'
Я не могу понять, есть ли ошибка в коде обучающей программы или я сделал ошибку где-то.
Можете ли вы уточнить, где именно я должен заменить, что, то есть контроллер, модель ...? Если я прокомментирую этот тест, все остальное будет зеленым. – 2010-11-30 15:02:11
Попробуйте отредактированное решение. Надеюсь, что это очистит? – 2010-11-30 15:26:02