Bir denetleyiciyi test etmeye çalışıyorum ve bu hatayı aldım. Hatayı anlıyorum ama nasıl düzelteceğimi bilmiyorum.
test: on CREATE to :user with completely invalid email should respond with
redirect
(UsersControllerTest):ActionController::RedirectBackError:
No HTTP_REFERER was set in the request to this action,
so redirect_to :back could not be called successfully.
If this is a test, make sure to specify request.env["HTTP_REFERER"].
Nerede belirtin? Bunu denedim:
setup { post :create, { :user => { :email => 'invalid@abc' } },
{ 'referer' => '/sessions/new' } }
Ama aynı hatayı aldım.
Tam olarak ne ile belirtin? Sanırım geri dönmesini istediğim görünümün URI'si:
'/sessions/new'
Demek istedikleri bu mu?
Tamam, yani şunu yapmak istedikleri anlaşılıyor:
setup do
@request.env['HTTP_REFERER'] = 'http://localhost:3000/sessions/new'
post :create, { :user => { :email => 'invalid@abc' } }, {}
end
Biri bana bunun nerede belgelendiğini söyleyebilir mi? Bu bilginin bağlamını okumak istiyorum.
Alan adı "localhost: 3000" değilse ne olur? Ya "localhost: 3001" veya başka bir şeyse? Bunu tahmin etmenin bir yolu var mı?
Bu neden çalışmıyor:
setup { post :create, { :user => { :email => 'invalid@abc' } },
{ 'referer' => '/sessions/new' } }
Rails belgeleri özellikle başlıkları nasıl ayarladığınızı söylüyor .