Sha256: 0c650fcb21f26627a807ed652c844141a516d85f85fe81bffcc332439e88885e

Contents?: true

Size: 1.3 KB

Versions: 27

Compression:

Stored size: 1.3 KB

Contents

require 'spec_helper'

describe CanvasOauth::Authorization do
  it { is_expected.to validate_presence_of :canvas_user_id }
  it { is_expected.to validate_presence_of :token }
  it { is_expected.to validate_presence_of :last_used_at }

  describe "cache_token" do
    subject { CanvasOauth::Authorization.first }

    before do
      CanvasOauth::Authorization.cache_token('abc', 123, 'abc123')
    end

    its(:token) { is_expected.to eq 'abc' }
    its(:canvas_user_id) { is_expected.to eq 123 }
    its(:tool_consumer_instance_guid) { is_expected.to eq 'abc123' }
    its(:last_used_at) { is_expected.to be_present }
  end

  describe "fetch_token" do
    subject(:token) { CanvasOauth::Authorization.fetch_token(123, 'abc123') }

    context "when a token exists" do
      before do
        CanvasOauth::Authorization.cache_token('abc', 123, 'abc123')
        CanvasOauth::Authorization.cache_token('def', 123, 'abc123')
      end

      it "retrieves the latest one" do
        expect(token).to eq 'def'
      end
    end

    context "when a token exists with a tool_consumer_instance_guid" do
      before do
        CanvasOauth::Authorization.cache_token('abc', 123, 'wrong')
      end

      it { is_expected.to be_nil }
    end

    context "when no token exists" do
      it { is_expected.to be_nil }
    end
  end
end

Version data entries

27 entries across 27 versions & 2 rubygems

Version Path
canvas_oauth_engine-2.4.0 spec/models/canvas_oauth/authorization_spec.rb
canvas_oauth_engine-2.3.0 spec/models/canvas_oauth/authorization_spec.rb
canvas_oauth_engine-2.2.0 spec/models/canvas_oauth/authorization_spec.rb
qalam_oauth_engine-3.0.9 spec/models/canvas_oauth/authorization_spec.rb
qalam_oauth_engine-3.0.8 spec/models/canvas_oauth/authorization_spec.rb
qalam_oauth_engine-3.0.7 spec/models/canvas_oauth/authorization_spec.rb
qalam_oauth_engine-3.0.6 spec/models/canvas_oauth/authorization_spec.rb
qalam_oauth_engine-3.0.5 spec/models/canvas_oauth/authorization_spec.rb
qalam_oauth_engine-3.0.4 spec/models/canvas_oauth/authorization_spec.rb
qalam_oauth_engine-3.0.3 spec/models/canvas_oauth/authorization_spec.rb
qalam_oauth_engine-3.0.2 spec/models/canvas_oauth/authorization_spec.rb
qalam_oauth_engine-3.0.1 spec/models/canvas_oauth/authorization_spec.rb
qalam_oauth_engine-3.0.0 spec/models/canvas_oauth/authorization_spec.rb
qalam_oauth_engine-2.2.9 spec/models/canvas_oauth/authorization_spec.rb
canvas_oauth_engine-2.1.3 spec/models/canvas_oauth/authorization_spec.rb
canvas_oauth_engine-2.1.2 spec/models/canvas_oauth/authorization_spec.rb
canvas_oauth_engine-2.1.1 spec/models/canvas_oauth/authorization_spec.rb
canvas_oauth_engine-2.1.0 spec/models/canvas_oauth/authorization_spec.rb
canvas_oauth_engine-2.0.0 spec/models/canvas_oauth/authorization_spec.rb
canvas_oauth_engine-1.1.2 spec/models/canvas_oauth/authorization_spec.rb