Sha256: eaf7172ac1cfc8f2a61a9e9f149130f6a011f654844ee539220cfd6e4f934e3c

Contents?: true

Size: 1.57 KB

Versions: 12

Compression:

Stored size: 1.57 KB

Contents

require 'test_helper'

module Guts
  class SessionsControllerTest < ActionController::TestCase
    setup do
      @user   = guts_users :admin_user
      @routes = Engine.routes
    end

    test 'should get login' do
      get :new
      assert_response :success
    end
    
    test 'should show error for invalid user' do
      post :create, session: { email: 'durkadurka@gmail.com' }
      assert_response :success
      assert_equal 'Invalid login credentials', flash[:notice]
    end
    
    test 'should login the user' do
      post :create, session: { email: @user.email, password: 'dingo' }
      assert_redirected_to users_path
    end
    
    test 'should log the user out' do
      get :destroy
      assert_equal 'You have been logged out', flash[:notice]
      assert_redirected_to new_session_path
    end
    
    test 'should get forgot password page' do
      get :forgot
      assert_response :success
    end
    
    test 'should set a forgot password token' do
      post :forgot_token, session: { email: @user.email }
      assert_equal 'Your reset link has been sent to your inbox.', flash[:notice]
      assert_redirected_to new_session_path
    end
    
    test 'should not set a forgot password token for invalid user' do
      post :forgot_token, session: { email: 'durkadurka@gmail.com' }
      assert_equal 'Invalid email address', flash[:notice]
    end
    
    test 'should reset the users password' do
      get :reset_password, token: 123456
      assert flash[:notice].include?('new password is now')
      assert_redirected_to new_session_path
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
guts-1.3.6 test/controllers/guts/sessions_controller_test.rb
guts-1.3.5 test/controllers/guts/sessions_controller_test.rb
guts-1.3.4 test/controllers/guts/sessions_controller_test.rb
guts-1.3.3 test/controllers/guts/sessions_controller_test.rb
guts-1.3.2 test/controllers/guts/sessions_controller_test.rb
guts-1.3.1 test/controllers/guts/sessions_controller_test.rb
guts-1.3.0 test/controllers/guts/sessions_controller_test.rb
guts-1.2.2 test/controllers/guts/sessions_controller_test.rb
guts-1.2.1 test/controllers/guts/sessions_controller_test.rb
guts-1.2.0 test/controllers/guts/sessions_controller_test.rb
guts-1.1.1 test/controllers/guts/sessions_controller_test.rb
guts-1.1.0 test/controllers/guts/sessions_controller_test.rb