Sha256: 228c4aa3c28a1d354158f257c2c009a455ec3681d4839f8a24c3fb1c18538a0d
Contents?: true
Size: 1.19 KB
Versions: 5
Compression:
Stored size: 1.19 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, 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, 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(cookies['user_id']).to be_nil expect(cookies['remember_token']).to be_nil end end end
Version data entries
5 entries across 5 versions & 1 rubygems