Rspec: Wie spezifiziere ich request.env in einer Helper-Spezifikation?
In meinem helper module, die ich habe:
def abc(url)
...
if request.env['HTTP_USER_AGENT']
do something
end
end
In meinem spec-Datei, die ich habe:
describe "#abc" do
before(:each) do
@meth = :abc
helper.request.env['HTTP_USER_AGENT'] = "..."
end
it "should return the webstart jnlp file" do
@obj.send(@meth, "some_url").should ....
end
end
Wenn ich die Skillung habe ich diese Fehlermeldung:
undefined local variable or method `request' for <ObjectWithDocHelperMixedIn:0x00000103b5a7d0>
Wie kann ich die stub für die Anfrage.env['...'] in meine specs?
Dank.
InformationsquelleAutor der Frage RoundOutTooSoon | 2012-04-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie rspec-railsSie könnten in der Lage sein zu verwenden
controller.request
in Ihrer Helfer-tests.InformationsquelleAutor der Antwort Chris Keele
Gut, Sie haben fast nichts zu tun:
Ich gab nur diese, die anderen versuchen, und dieser übergibt:
InformationsquelleAutor der Antwort apneadiving
Können Sie überschreiben die user-agent-Satz in der Anfrage env indem Sie Folgendes tun.
Dann in Ihrer Skillung:
InformationsquelleAutor der Antwort jladieu
Versuchen Sie dies:
stub(request).env { {"HTTP_USER_AGENT" => "Some String"} }
InformationsquelleAutor der Antwort yeowzir