Sha256: 19130bd2e05dbc88b24eedda8a11f14c35839db37feaa14ef285c58a0e454ba5

Contents?: true

Size: 821 Bytes

Versions: 10

Compression:

Stored size: 821 Bytes

Contents

require 'spec_helper'

module Clearance
  describe SignInGuard do
    it 'handles success' do
      sign_in_guard = SignInGuard.new(stub('session'))
      status = stub('status')
      SuccessStatus.stubs(:new).returns(status)

      expect(sign_in_guard.success).to eq(status)
    end

    it 'handles failure' do
      sign_in_guard = SignInGuard.new(stub('session'))
      status = stub('status')
      failure_message = "Failed"
      FailureStatus.stubs(:new).with(failure_message).returns(status)

      expect(sign_in_guard.failure(failure_message)).to eq(status)
    end

    it 'can proceed to the next guard' do
      guards = stub('guards', call: true)
      sign_in_guard = SignInGuard.new(stub('session'), guards)
      sign_in_guard.next_guard
      expect(guards).to have_received(:call)
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
clearance-1.5.1 spec/clearance/sign_in_guard_spec.rb
clearance-1.5.0 spec/clearance/sign_in_guard_spec.rb
clearance-1.4.3 spec/clearance/sign_in_guard_spec.rb
clearance-1.4.2 spec/clearance/sign_in_guard_spec.rb
clearance-1.4.1 spec/clearance/sign_in_guard_spec.rb
clearance-1.4.0 spec/clearance/sign_in_guard_spec.rb
clearance-1.3.0 spec/clearance/sign_in_guard_spec.rb
clearance-1.2.1 spec/clearance/sign_in_guard_spec.rb
clearance-1.2.0 spec/clearance/sign_in_guard_spec.rb
clearance-1.1.0 spec/clearance/sign_in_guard_spec.rb