spec/omniauth/strategies/auth0_spec.rb in omniauth-auth0-2.2.0 vs spec/omniauth/strategies/auth0_spec.rb in omniauth-auth0-2.3.0

- old
+ new

@@ -80,10 +80,12 @@ expect(redirect_url).to have_query('response_type', 'code') expect(redirect_url).to have_query('state') expect(redirect_url).to have_query('client_id') expect(redirect_url).to have_query('redirect_uri') expect(redirect_url).not_to have_query('auth0Client') + expect(redirect_url).not_to have_query('connection') + expect(redirect_url).not_to have_query('prompt') end it 'redirects to hosted login page' do get 'auth/auth0?connection=abcd' expect(last_response.status).to eq(302) @@ -93,12 +95,27 @@ expect(redirect_url).to have_query('state') expect(redirect_url).to have_query('client_id') expect(redirect_url).to have_query('redirect_uri') expect(redirect_url).to have_query('connection', 'abcd') expect(redirect_url).not_to have_query('auth0Client') + expect(redirect_url).not_to have_query('prompt') end + it 'redirects to hosted login page with prompt=login' do + get 'auth/auth0?prompt=login' + expect(last_response.status).to eq(302) + redirect_url = last_response.headers['Location'] + expect(redirect_url).to start_with('https://samples.auth0.com/authorize') + expect(redirect_url).to have_query('response_type', 'code') + expect(redirect_url).to have_query('state') + expect(redirect_url).to have_query('client_id') + expect(redirect_url).to have_query('redirect_uri') + expect(redirect_url).to have_query('prompt', 'login') + expect(redirect_url).not_to have_query('auth0Client') + expect(redirect_url).not_to have_query('connection') + end + describe 'callback' do let(:access_token) { 'access token' } let(:expires_in) { 2000 } let(:token_type) { 'bearer' } let(:refresh_token) { 'refresh token' } @@ -298,10 +315,10 @@ RSpec::Matchers.define :have_query do |key, value| match do |actual| uri = redirect_uri(actual) query = query(uri) if value.nil? - query[key].length == 1 + query.key?(key) else query[key] == [value] end end