class OmniauthShibbolethRequestControllerTest < ActionDispatch::IntegrationTest include Devise::Test::IntegrationHelpers # user_omniauth_shibboleth GET /auth/shibboleth users/omniauth_shibboleth_request#redirect # user_shibboleth_assoc GET /auth/shibboleth/assoc users/omniauth_shibboleth_request#associate setup do @schemes = IdentifierScheme.all @user = User.first @callback_uris = {} # Stub out shibboleth IDP responses OmniAuth.config.mock_auth[:shibboleth] = OmniAuth::AuthHash.new({ :provider => "shibboleth", :idp => "blah", :uid => 'foo:bar' }) end # ------------------------------------------------------------- test "gets the IDP from the incoming params" do get user_omniauth_shibboleth_path assert_response :redirect assert_redirected_to "#{Rails.application.config.shibboleth_login}?target=%2Fusers%2Fauth%2Fshibboleth%2Fcallback" # Try it passing in an idp get "#{user_omniauth_shibboleth_path}?idp=foo" assert_response :redirect assert_redirected_to "#{Rails.application.config.shibboleth_login}?entityID=foo&target=%2Fusers%2Fauth%2Fshibboleth%2Fcallback" end end