Sha256: 62eaf13109dd5ede0472f1e0f00aa3722bce7defc0f4194da2f13a80af344b1e
Contents?: true
Size: 1.92 KB
Versions: 4
Compression:
Stored size: 1.92 KB
Contents
require 'spec_helper.rb' describe Rack::OAuth2::Server::Token::AuthorizationCode do subject { response } let(:request) { Rack::MockRequest.new app } let :response do request.post('/', :params => { :grant_type => 'authorization_code', :client_id => 'client_id', :code => 'authorization_code', :redirect_uri => 'http://client.example.com/callback' }) end let :id_token do OpenIDConnect::ResponseObject::IdToken.new( :iss => 'https://server.example.com', :user_id => 'user_id', :aud => 'client_id', :exp => 1313424327, :secret => 'secret' ) end context "when id_token is given" do let :app do Rack::OAuth2::Server::Token.new do |request, response| response.access_token = Rack::OAuth2::AccessToken::Bearer.new(:access_token => 'access_token') response.id_token = id_token response.private_key = private_key end end its(:status) { should == 200 } its(:body) { should include "\"id_token\":\"#{id_token.to_jwt(private_key)}\"" } context 'when id_token is String' do let(:id_token) { 'id_token' } its(:body) { should include "\"id_token\":\"id_token\"" } end context 'when private_key is missing' do let :app do Rack::OAuth2::Server::Token.new do |request, response| response.access_token = Rack::OAuth2::AccessToken::Bearer.new(:access_token => 'access_token') response.id_token = id_token end end it do expect { response }.should raise_error AttrRequired::AttrMissing, 'private_key is required' end end end context "otherwise" do let :app do Rack::OAuth2::Server::Token.new do |request, response| response.access_token = Rack::OAuth2::AccessToken::Bearer.new(:access_token => 'access_token') end end its(:status) { should == 200 } its(:body) { should_not include "id_token" } end end
Version data entries
4 entries across 4 versions & 1 rubygems