From f402ad59bdf3dfea345ac782ae980e7d83aa0e03 Mon Sep 17 00:00:00 2001 From: Samuel Couillard <43917914+scouillard@users.noreply.github.com> Date: Mon, 15 May 2023 17:11:09 -0400 Subject: [PATCH] fix(keycloak): user redirection on KC login (#5184) * fix(keycloak): user redirection on KC login * fix specs --- app/controllers/external_controller.rb | 2 +- spec/controllers/external_controller_spec.rb | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/app/controllers/external_controller.rb b/app/controllers/external_controller.rb index 39964cd4..cc8a5b67 100644 --- a/app/controllers/external_controller.rb +++ b/app/controllers/external_controller.rb @@ -69,7 +69,7 @@ class ExternalController < ApplicationController cookies.delete(:location) return redirect_to redirect_location if redirect_location&.match?('\A\/rooms\/\w{3}-\w{3}-\w{3}-\w{3}\/join\z') - redirect_to '/rooms' + redirect_to '/' rescue StandardError => e Rails.logger.error("Error during authentication: #{e}") redirect_to '/?error=SignupError' diff --git a/spec/controllers/external_controller_spec.rb b/spec/controllers/external_controller_spec.rb index 8858ecb3..d9b7a9ab 100644 --- a/spec/controllers/external_controller_spec.rb +++ b/spec/controllers/external_controller_spec.rb @@ -54,7 +54,7 @@ RSpec.describe ExternalController, type: :controller do get :create_user, params: { provider: 'openid_connect' } expect(session[:session_token]).to eq(User.find_by(email: OmniAuth.config.mock_auth[:openid_connect][:info][:email]).session_token) - expect(response).to redirect_to('/rooms') + expect(response).to redirect_to('/') end it 'assigns the User role to the user' do @@ -95,7 +95,7 @@ RSpec.describe ExternalController, type: :controller do } get :create_user, params: { provider: 'openid_connect' } - expect(response).to redirect_to('/rooms') + expect(response).to redirect_to('/') end it 'doesnt redirect if it doesnt match a room joins format check 2' do @@ -107,7 +107,7 @@ RSpec.describe ExternalController, type: :controller do } get :create_user, params: { provider: 'openid_connect' } - expect(response).to redirect_to('/rooms') + expect(response).to redirect_to('/') end it 'doesnt redirect if it doesnt match a room joins format check 3' do @@ -119,7 +119,7 @@ RSpec.describe ExternalController, type: :controller do } get :create_user, params: { provider: 'openid_connect' } - expect(response).to redirect_to('/rooms') + expect(response).to redirect_to('/') end it 'deletes the cookie after reading' do @@ -215,7 +215,7 @@ RSpec.describe ExternalController, type: :controller do create(:user, external_id: OmniAuth.config.mock_auth[:openid_connect][:uid]) expect { get :create_user, params: { provider: 'openid_connect' } }.not_to raise_error - expect(response).to redirect_to('/rooms') + expect(response).to redirect_to('/') end it 'returns an InviteInvalid error if no invite is passed' do -- GitLab