Sha256: f9d732c2de9f9d38b27aa3c987f0099d2c80a9370aad82966cb7e48ad2677e79

Contents?: true

Size: 1.02 KB

Versions: 15

Compression:

Stored size: 1.02 KB

Contents

require 'rails_helper'

module Ctws
  RSpec.describe AuthenticateUser, class: 'Ctws::AuthenticateUser' do
    # create test user
    let(:ctws_user) { create(:ctws_user) }
    # valid request subject
    subject(:valid_auth_obj) { described_class.new(ctws_user.email, ctws_user.password) }
    # invalid request subject
    subject(:invalid_auth_obj) { described_class.new('foo', 'bar') }
    
    # Test suite for AuthenticateUser#call
    describe '#call' do
      # return token when valid request
      context 'when valid credentials' do
        it 'returns an auth token' do
          token = valid_auth_obj.call
          expect(token).not_to be_nil
        end
      end
      
      # raise Authentication Error when invalid request
      context 'when invalid credentials' do
        it 'raises an authentication error' do
          expect { invalid_auth_obj.call }
          .to raise_error(
          Ctws::ExceptionHandler::AuthenticationError,
          /Invalid credentials/
          )
        end
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
ctws-0.3.0.beta spec/auth/ctws/authenticate_user_spec.rb
ctws-0.2.3.beta spec/auth/ctws/authenticate_user_spec.rb
ctws-0.2.2.beta spec/auth/ctws/authenticate_user_spec.rb
ctws-0.2.1.beta spec/auth/ctws/authenticate_user_spec.rb
ctws-0.2.0.beta spec/auth/ctws/authenticate_user_spec.rb
ctws-0.1.14.beta spec/auth/ctws/authenticate_user_spec.rb
ctws-0.1.13.alpha spec/auth/ctws/authenticate_user_spec.rb
ctws-0.1.12.alpha spec/auth/ctws/authenticate_user_spec.rb
ctws-0.1.11.alpha spec/auth/ctws/authenticate_user_spec.rb
ctws-0.1.10.alpha spec/auth/ctws/authenticate_user_spec.rb
ctws-0.1.9.alpha spec/auth/ctws/authenticate_user_spec.rb
ctws-0.1.8.alpha spec/auth/ctws/authenticate_user_spec.rb
ctws-0.1.7.alpha spec/auth/ctws/authenticate_user_spec.rb
ctws-0.1.6.alpha spec/auth/ctws/authenticate_user_spec.rb
ctws-0.1.5.alpha spec/auth/ctws/authenticate_user_spec.rb