Faire une demande comme ceci :
post :create, {}, { "X-BLAH" => "blah" }
se termine par un objet de requête avec les en-têtes spécifiés imbriqués dans "rack.session":
#<ActionController::TestRequest:0x105e02698 ... "rack.session"=>{"X-BLAH"=>"blah"} ... >
ainsi, par exemple, l'envoi d'un en-tête HTTP_AUTHORIZATION n'est pas récupéré par authenticate_or_request_with_http_basic
.
J'utilise les gemmes :
gem "rails", "3.0.0.beta3"
gem "rspec", "2.0.0.beta.9"
gem "rspec-rails", "2.0.0.beta.9.1"
Ben
ps. Cela ne s'est pas produit avec rspec 2 beta4
Depuis la version bêta.8, les spécifications du contrôleur sont déléguées à ActionController::TestCase::Behavior (http://github.com/rails/rails/blob/master/actionpack/lib/action_controller/test_case.rb).
Pour définir des en-têtes, vous les définissez directement sur l'objet de requête :
request.env["X-BLAH"] = "blabla" poste :créer, ....
Super, merci pour la réponse rapide. Où puis-je trouver de la documentation ?
Qu'en est-il des spécifications de la demande ?
request
arrive à zéro ?
Merci,
Dan
Woops on dirait que #request_via_redirect
fait l'affaire
http://guides.rubyonrails.org/testing.html#helpers -available-for-integration-tests
Dan
Commentaire le plus utile
Qu'en est-il des spécifications de la demande ?
request
arrive à zéro ?Merci,
Dan