Rails 4 + Rspec + Devise: undefinierte Methode 'env' in Controller-Spezifikationen für sign_in in einem Benutzer

8

In meinem spec_helper.rb habe ich

hinzugefügt %Vor%

In der Controller-Spezifikation vorher: Alle Haken Ich versuche, den Benutzer mit diesem Code anzumelden

%Vor%

und NoMethodError: undefinierte Methode 'env' für nil: NilClass.

Irgendwelche Ideen?

    
Shkarik 21.10.2013, 08:34
quelle

3 Antworten

15

Ich habe before(:all) in before(:each) geändert und jetzt funktioniert es. Sieht aus wie API-Inkompatibilität zwischen devise (verwendet github Master-Zweig) und rspec 2.14.1.

    
Shkarik 21.10.2013, 20:02
quelle
1

Kommentieren Sie die Zeile @request.env["devise.mapping"] = Devise.mappings[:user] , wenn Sie Spezifikationen für interne Controller von Devise schreiben. In den Dokumenten von Devise wird auf den Abschnitt "Testhelfer" verwiesen.

    
Yaswanth Tavva 17.07.2014 12:41
quelle
0

Die Controller-Spezifikation enthält ein Anforderungsobjekt. Sie sollten wahrscheinlich von @ request zu Anfrage wechseln.

%Vor%     
deepthi 21.10.2013 08:38
quelle