diff --git a/pkg/services/multildap/multildap_test.go b/pkg/services/multildap/multildap_test.go index 467bebd4dd6..1c338c69377 100644 --- a/pkg/services/multildap/multildap_test.go +++ b/pkg/services/multildap/multildap_test.go @@ -446,3 +446,76 @@ func TestMultiLDAP(t *testing.T) { }) }) } + +// mockLDAP represents testing struct for ldap testing +type mockLDAP struct { + dialCalledTimes int + loginCalledTimes int + closeCalledTimes int + usersCalledTimes int + bindCalledTimes int + + dialErrReturn error + + loginErrReturn error + loginReturn *models.ExternalUserInfo + + bindErrReturn error + + usersErrReturn error + usersFirstReturn []*models.ExternalUserInfo + usersRestReturn []*models.ExternalUserInfo +} + +// Login test fn +func (mock *mockLDAP) Login(*models.LoginUserQuery) (*models.ExternalUserInfo, error) { + + mock.loginCalledTimes = mock.loginCalledTimes + 1 + return mock.loginReturn, mock.loginErrReturn +} + +// Users test fn +func (mock *mockLDAP) Users([]string) ([]*models.ExternalUserInfo, error) { + mock.usersCalledTimes = mock.usersCalledTimes + 1 + + if mock.usersCalledTimes == 1 { + return mock.usersFirstReturn, mock.usersErrReturn + } + + return mock.usersRestReturn, mock.usersErrReturn +} + +// UserBind test fn +func (mock *mockLDAP) UserBind(string, string) error { + return nil +} + +// Dial test fn +func (mock *mockLDAP) Dial() error { + mock.dialCalledTimes = mock.dialCalledTimes + 1 + return mock.dialErrReturn +} + +// Close test fn +func (mock *mockLDAP) Close() { + mock.closeCalledTimes = mock.closeCalledTimes + 1 +} + +func (mock *mockLDAP) Bind() error { + mock.bindCalledTimes++ + return mock.bindErrReturn +} + +func setup() *mockLDAP { + mock := &mockLDAP{} + + newLDAP = func(config *ldap.ServerConfig) ldap.IServer { + return mock + } + + return mock +} + +func teardown() { + newLDAP = ldap.New +} diff --git a/pkg/services/multildap/testing.go b/pkg/services/multildap/testing.go deleted file mode 100644 index 65b72c07097..00000000000 --- a/pkg/services/multildap/testing.go +++ /dev/null @@ -1,119 +0,0 @@ -package multildap - -import ( - "github.com/grafana/grafana/pkg/models" - "github.com/grafana/grafana/pkg/services/ldap" -) - -// MockLDAP represents testing struct for ldap testing -type MockLDAP struct { - dialCalledTimes int - loginCalledTimes int - closeCalledTimes int - usersCalledTimes int - bindCalledTimes int - - dialErrReturn error - - loginErrReturn error - loginReturn *models.ExternalUserInfo - - bindErrReturn error - - usersErrReturn error - usersFirstReturn []*models.ExternalUserInfo - usersRestReturn []*models.ExternalUserInfo -} - -// Login test fn -func (mock *MockLDAP) Login(*models.LoginUserQuery) (*models.ExternalUserInfo, error) { - - mock.loginCalledTimes = mock.loginCalledTimes + 1 - return mock.loginReturn, mock.loginErrReturn -} - -// Users test fn -func (mock *MockLDAP) Users([]string) ([]*models.ExternalUserInfo, error) { - mock.usersCalledTimes = mock.usersCalledTimes + 1 - - if mock.usersCalledTimes == 1 { - return mock.usersFirstReturn, mock.usersErrReturn - } - - return mock.usersRestReturn, mock.usersErrReturn -} - -// UserBind test fn -func (mock *MockLDAP) UserBind(string, string) error { - return nil -} - -// Dial test fn -func (mock *MockLDAP) Dial() error { - mock.dialCalledTimes = mock.dialCalledTimes + 1 - return mock.dialErrReturn -} - -// Close test fn -func (mock *MockLDAP) Close() { - mock.closeCalledTimes = mock.closeCalledTimes + 1 -} - -func (mock *MockLDAP) Bind() error { - mock.bindCalledTimes++ - return mock.bindErrReturn -} - -// MockMultiLDAP represents testing struct for multildap testing -type MockMultiLDAP struct { - LoginCalledTimes int - UsersCalledTimes int - UserCalledTimes int - PingCalledTimes int - - UsersResult []*models.ExternalUserInfo -} - -func (mock *MockMultiLDAP) Ping() ([]*ServerStatus, error) { - mock.PingCalledTimes = mock.PingCalledTimes + 1 - - return nil, nil -} - -// Login test fn -func (mock *MockMultiLDAP) Login(query *models.LoginUserQuery) ( - *models.ExternalUserInfo, error, -) { - mock.LoginCalledTimes = mock.LoginCalledTimes + 1 - return nil, nil -} - -// Users test fn -func (mock *MockMultiLDAP) Users(logins []string) ( - []*models.ExternalUserInfo, error, -) { - mock.UsersCalledTimes = mock.UsersCalledTimes + 1 - return mock.UsersResult, nil -} - -// User test fn -func (mock *MockMultiLDAP) User(login string) ( - *models.ExternalUserInfo, ldap.ServerConfig, error, -) { - mock.UserCalledTimes = mock.UserCalledTimes + 1 - return nil, ldap.ServerConfig{}, nil -} - -func setup() *MockLDAP { - mock := &MockLDAP{} - - newLDAP = func(config *ldap.ServerConfig) ldap.IServer { - return mock - } - - return mock -} - -func teardown() { - newLDAP = ldap.New -}