From 3cb5f9d6c5404603399f6472aed4266377651b8c Mon Sep 17 00:00:00 2001 From: Go MAEDA Date: Mon, 13 Dec 2021 09:16:46 +0000 Subject: [PATCH] Include an authentication method name in LDAP connection error messages (#33345). Contributed by Yuichi HARADA. git-svn-id: http://svn.redmine.org/redmine/trunk@21310 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/models/auth_source_ldap.rb | 8 ++++---- test/unit/auth_source_ldap_test.rb | 6 ++++-- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/app/models/auth_source_ldap.rb b/app/models/auth_source_ldap.rb index 8ed7ce27f..888493338 100644 --- a/app/models/auth_source_ldap.rb +++ b/app/models/auth_source_ldap.rb @@ -63,7 +63,7 @@ class AuthSourceLdap < AuthSource end end rescue *NETWORK_EXCEPTIONS => e - raise AuthSourceException.new(e.message) + raise AuthSourceException.new("#{auth_method_name}: #{e.message}") end # Test the connection to the LDAP @@ -77,7 +77,7 @@ class AuthSourceLdap < AuthSource end end rescue *NETWORK_EXCEPTIONS => e - raise AuthSourceException.new(e.message) + raise AuthSourceException.new("#{auth_method_name}: #{e.message}") end def auth_method_name @@ -107,7 +107,7 @@ class AuthSourceLdap < AuthSource end results rescue *NETWORK_EXCEPTIONS => e - raise AuthSourceException.new(e.message) + raise AuthSourceException.new("#{auth_method_name}: #{e.message}") end def ldap_mode @@ -144,7 +144,7 @@ class AuthSourceLdap < AuthSource return yield end rescue Timeout::Error => e - raise AuthSourceTimeoutException.new(e.message) + raise AuthSourceTimeoutException.new("#{auth_method_name}: #{e.message}") end def ldap_filter diff --git a/test/unit/auth_source_ldap_test.rb b/test/unit/auth_source_ldap_test.rb index cec88ae7e..dd8506788 100644 --- a/test/unit/auth_source_ldap_test.rb +++ b/test/unit/auth_source_ldap_test.rb @@ -168,9 +168,10 @@ class AuthSourceLdapTest < ActiveSupport::TestCase auth_source.timeout = 1 def auth_source.initialize_ldap_con(*args); sleep(5); end - assert_raise AuthSourceTimeoutException do + error = assert_raise AuthSourceTimeoutException do auth_source.authenticate 'example1', '123456' end + assert_match /\ALDAP: /, error.message end def test_search_should_return_matching_entries @@ -210,9 +211,10 @@ class AuthSourceLdapTest < ActiveSupport::TestCase auth_source.host = "badhost" auth_source.save! - assert_raise AuthSourceException do + error = assert_raise AuthSourceException do auth_source.test_connection end + assert_match /\ALDAP: /, error.message end def test_test_connection_with_incorrect_port -- 2.39.5