require "minitest_helper" describe SessionsController do describe "GET new" do before do SessionsController.any_instance.stubs(:warden).returns(stub(message: nil)) get :new end it { response.status.must_equal 200 } it { response.body.must_include "Log In" } end describe "POST create" do describe "with invalid params" do before do warden_manager = stub(authenticate!: nil, message: "Not Logged In") SessionsController.any_instance.stubs(:warden).returns(warden_manager) post :create, email: "notfound@blah.com", password: "xxx123" end it { response.status.must_equal 200 } end describe "with valid params" do let(:user) do User.create( email: "info@newleaders.com", password: "123456", password_confirmation: "1234546" ) end before do warden_manager = stub(authenticate!: user) SessionsController.any_instance.stubs(:warden).returns(warden_manager) post :create, email: "info@newleaders.com", password: "123456" end it { response.status.must_equal 302 } end end end