Sha256: ac07644cf738ef1c726b3362ac544eabede3f9927ed6dd159b52253972c5c543
Contents?: true
Size: 1.24 KB
Versions: 4
Compression:
Stored size: 1.24 KB
Contents
require 'rails_helper' RSpec.describe Exposition::Admin::SessionsController, type: :controller do routes { Exposition::Engine.routes } describe "GET #new" do it "returns http success" do get :new expect(response).to have_http_status(:success) end end describe "POST #create" do it "finds the user by the session email" do user = create(:user, email: 'user@user.com', password: 'password') post :create, params: { session: {email: user.email, password: user.password} } expect(response).to redirect_to(admin_posts_path) end it "generates an error message with incorrect login credentials" do post :create, params: {session: {email: '', password: ''}} expect(flash[:error]).to be_present get :new expect(flash[:error]).to_not be_present end end describe "DELETE #destroy" do it "deletes the sesssion and cookies" do build_user_and_login session['user_id'] = 1 request.cookies['user_id'] = 1 request.cookies['remember_token'] = 'token' delete :destroy expect(session['user_id']).to be_nil expect(response.cookies['user_id']).to be_nil expect(response.cookies['remember_token']).to be_nil end end end
Version data entries
4 entries across 4 versions & 1 rubygems