Frage

Ich habe einige Schwierigkeiten bei der Prüfung devise mit shoulda:

2) Error:
test: handle :index logged as admin should redirect to Daily page.
(Admin::DailyClosesControllerTest):
NoMethodError: undefined method `env' for nil:NilClass
devise (1.0.6) [v] lib/devise/test_helpers.rb:52:in
`setup_controller_for_warden'

Ich habe in meinem test_helper:

include Devise::TestHelpers

Die Gedanken? Vielen Dank im Voraus,

Cristi

War es hilfreich?

Lösung

include Devise::TestHelpers geht nicht in der test_helper.rb Datei, sondern innerhalb des Umfangs der einzelnen Testklassen. Genau wie ihre README zeigt:

class ActionController::TestCase
  include Devise::TestHelpers
end

Andere Tipps

Ich bin mir nicht sicher, ob rspeicher völlig korrekt ist, aber setzen:

class ActionController::TestCase
  include Devise::TestHelpers
end

am unteren Ende der test_helper.rb (ja nach dem END der class ActiveSupport::TestCase) sollte funktionieren. Es hat für 3 oder 4 Projekte von mir so weit, darunter eine i heute arbeitete.

Sie können dann sign_in users(:one) verwenden, wenn Sie Vorrichtungen verwenden, in Ihren Tests. Es sei denn, shoulda ist bringt ihn durcheinander?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top