ruby on rails - test - Método de auxiliar auxiliar RSpec en la especificación del controlador
rspec rails 5 (1)
Puede insertarlo desde la especificación del controlador:
controller.stub!(:signed_in?).and_return(true) # emulate signed in user
controller.stub!(:signed_in?).and_return(false) # emulate unsigned user
El ''controlador'' del objeto está predefinido en las especificaciones del controlador.
ACTUALIZAR:
Con la sintaxis de RSpec 3:
allow(controller).to receive(:signed_in?).and_return(true)
allow(controller).to receive(:signed_in?).and_return(false)
Gracias a @jakeonrails por recordarlo.
Encontré preguntas similares pero, sorprendentemente, ninguna, que he encontrado, da una respuesta simple ...
Intentando insertar un método de ayuda en mi especificación de controlador; no estoy seguro de qué objeto necesitaría duplicarse?
El controlador llama a este método:
#app/helpers/sessions_helper.rb
def signed_in?
current_user.present?
end
Me gustaría ponerlo en especificación para devolver verdadero / falso.