mirror of
https://github.com/wahyd4/gitlabhq.git
synced 2026-08-13 14:46:05 +10:00
Make new allow_single_sign_on feature backwards compatible
This commit is contained in:
@@ -106,7 +106,11 @@ module Gitlab
|
||||
|
||||
def signup_enabled?
|
||||
providers = Gitlab.config.omniauth.allow_single_sign_on
|
||||
providers.include?(auth_hash.provider)
|
||||
if providers.is_a?(Array)
|
||||
providers.include?(auth_hash.provider)
|
||||
else
|
||||
providers
|
||||
end
|
||||
end
|
||||
|
||||
def block_after_signup?
|
||||
|
||||
@@ -41,7 +41,7 @@ describe Gitlab::OAuth::User, lib: true do
|
||||
|
||||
describe 'signup' do
|
||||
shared_examples "to verify compliance with allow_single_sign_on" do
|
||||
context "with allow_single_sign_on enabled" do
|
||||
context "with new allow_single_sign_on enabled syntax" do
|
||||
before { stub_omniauth_config(allow_single_sign_on: ['twitter']) }
|
||||
|
||||
it "creates a user from Omniauth" do
|
||||
@@ -54,12 +54,32 @@ describe Gitlab::OAuth::User, lib: true do
|
||||
end
|
||||
end
|
||||
|
||||
context "with allow_single_sign_on disabled (Default)" do
|
||||
context "with old allow_single_sign_on enabled syntax" do
|
||||
before { stub_omniauth_config(allow_single_sign_on: true) }
|
||||
|
||||
it "creates a user from Omniauth" do
|
||||
oauth_user.save
|
||||
|
||||
expect(gl_user).to be_valid
|
||||
identity = gl_user.identities.first
|
||||
expect(identity.extern_uid).to eql uid
|
||||
expect(identity.provider).to eql 'twitter'
|
||||
end
|
||||
end
|
||||
|
||||
context "with new allow_single_sign_on disabled syntax" do
|
||||
before { stub_omniauth_config(allow_single_sign_on: []) }
|
||||
it "throws an error" do
|
||||
expect{ oauth_user.save }.to raise_error StandardError
|
||||
end
|
||||
end
|
||||
|
||||
context "with old allow_single_sign_on disabled (Default)" do
|
||||
before { stub_omniauth_config(allow_single_sign_on: false) }
|
||||
it "throws an error" do
|
||||
expect{ oauth_user.save }.to raise_error StandardError
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context "with auto_link_ldap_user disabled (default)" do
|
||||
|
||||
@@ -61,7 +61,7 @@ describe Gitlab::Saml::User, lib: true do
|
||||
end
|
||||
|
||||
context 'with allow_single_sign_on disabled' do
|
||||
before { stub_omniauth_config(allow_single_sign_on: []) }
|
||||
before { stub_omniauth_config(allow_single_sign_on: false) }
|
||||
it 'should throw an error' do
|
||||
expect{ saml_user.save }.to raise_error StandardError
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user