Configure user search consistent with other config strategies
This commit is contained in:
Родитель
cf59b4cea4
Коммит
0b22addb4b
|
@ -107,7 +107,7 @@ module GitHub
|
|||
configure_search_strategy(options[:search_strategy])
|
||||
|
||||
# configure both the membership validator and the member search strategies
|
||||
configure_user_search_strategy(options[:global_catalog_user_search])
|
||||
configure_user_search_strategy(options[:user_search_strategy])
|
||||
|
||||
# enables instrumenting queries
|
||||
@instrumentation_service = options[:instrumentation_service]
|
||||
|
@ -292,10 +292,17 @@ module GitHub
|
|||
end
|
||||
end
|
||||
|
||||
def configure_user_search_strategy(global_catalog_user_search)
|
||||
def configure_user_search_strategy(strategy)
|
||||
@user_search_strategy = begin
|
||||
if global_catalog_user_search && active_directory_capability?
|
||||
GitHub::Ldap::UserSearch::ActiveDirectory.new(self)
|
||||
case strategy.to_s
|
||||
when "default"
|
||||
GitHub::Ldap::UserSearch::Default.new(self)
|
||||
when "global_catalog"
|
||||
if active_directory_capability?
|
||||
GitHub::Ldap::UserSearch::ActiveDirectory.new(self)
|
||||
else
|
||||
GitHub::Ldap::UserSearch::Default.new(self)
|
||||
end
|
||||
else
|
||||
GitHub::Ldap::UserSearch::Default.new(self)
|
||||
end
|
||||
|
|
|
@ -115,21 +115,21 @@ module GitHubLdapTestCases
|
|||
assert_equal GitHub::Ldap::MemberSearch::Recursive, @ldap.member_search_strategy
|
||||
end
|
||||
|
||||
def test_user_search_strategy_active_directory_when_configured_and_has_capability
|
||||
def test_user_search_strategy_global_catalog_when_configured_and_has_capability
|
||||
@ldap.stubs(:active_directory_capability?).returns(true)
|
||||
@ldap.configure_user_search_strategy true
|
||||
assert_equal GitHub::Ldap::UserSearch::ActiveDirectory, @ldap.user_search_strategy.class
|
||||
@ldap.configure_user_search_strategy("global_catalog")
|
||||
assert_kind_of GitHub::Ldap::UserSearch::ActiveDirectory, @ldap.user_search_strategy
|
||||
end
|
||||
|
||||
def test_user_search_strategy_not_active_directory_without_capability
|
||||
@ldap.stubs(:active_directory_capability?).returns(false)
|
||||
@ldap.configure_user_search_strategy true
|
||||
assert_equal GitHub::Ldap::UserSearch::Default, @ldap.user_search_strategy.class
|
||||
@ldap.configure_user_search_strategy("global_catalog")
|
||||
assert_kind_of GitHub::Ldap::UserSearch::Default, @ldap.user_search_strategy
|
||||
end
|
||||
|
||||
def test_user_search_strategy_default_when_configured
|
||||
@ldap.configure_user_search_strategy false
|
||||
assert_equal GitHub::Ldap::UserSearch::Default, @ldap.user_search_strategy.class
|
||||
@ldap.configure_user_search_strategy("default")
|
||||
assert_kind_of GitHub::Ldap::UserSearch::Default, @ldap.user_search_strategy
|
||||
end
|
||||
|
||||
def test_capabilities
|
||||
|
|
Загрузка…
Ссылка в новой задаче