2010-05-15 9 views
14

estoy teniendo algunas dificultades en las pruebas de idear con la debería:Prueba idear con la debería

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' 

tengo esto en mi test_helper:

include Devise::TestHelpers 

Pensamientos? Gracias de antemano,

Cristi

Respuesta

17

include Devise::TestHelpers no va en el archivo test_helper.rb, sino más bien dentro del alcance de las clases individuales de prueba. Al igual que su README muestra:

class ActionController::TestCase 
    include Devise::TestHelpers 
end 
+0

Sí. Eso fue todo. Thx –

12

No estoy seguro de si rspeicher es totalmente correcta, pero poniendo:

class ActionController::TestCase 
    include Devise::TestHelpers 
end 

en la parte inferior de test_helper.rb (sí después de la END del class ActiveSupport::TestCase) Deberia trabajar. Hasta el momento tiene 3 o 4 proyectos míos, incluido uno en el que estoy trabajando hoy.

Puede utilizar sign_in users(:one) si está utilizando dispositivos en sus pruebas. ¿A menos que debería estropearlo?

+0

Eso es diferente. Acababa de poner "include Devise :: TestHelpers" en el alcance base de su archivo test_helper.rb, no dentro de la clase TestCase. –

+0

Eso es precisamente lo que el README dice que haga. – jordanpg

+0

+1 para "sí después del FINAL de la clase ActiveSupport :: TestCase" –

Cuestiones relacionadas