Sha256: a3218f9cb10837b0a98d48a19d2ca2744642b735e799d69a9bd2885c14755779
Contents?: true
Size: 1.72 KB
Versions: 21
Compression:
Stored size: 1.72 KB
Contents
require 'spec_helper.rb' describe OpenIDConnect::Server::IdToken do let(:request) { Rack::MockRequest.new app } let :app do OpenIDConnect::Server::IdToken.new do |req, res| res.id_token = id_token end end let :env do Rack::MockRequest.env_for( '/id_token', :params => params ) end let :params do {:id_token => id_token.to_jwt(private_key) } 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 subject { request.post('/id_token', :params => params) } context 'when valid id_token is given' do it 'should extract it' do status, header, response = app.call(env) status.should == 200 json = response.body.first json.should include '"aud":"client_id"' json.should include '"user_id":"user_id"' json.should include '"exp":1313424327' json.should include '"iss":"https://server.example.com"' end end context 'otherwise' do context 'when missing' do let :params do {} end it do status, header, response = app.call(env) status.should == 400 response.body.first.should include '"error":"invalid_request"' end end context 'when rejected by authenticator' do let :app do OpenIDConnect::Server::IdToken.new do |req, res| req.invalid_id_token! 'Expired or Invalid Format' end end it do status, header, response = app.call(env) status.should == 400 response.body.first.should include '"error":"invalid_id_token"' end end end end
Version data entries
21 entries across 21 versions & 1 rubygems