Skip to content

Commit

Permalink
Return different values from the the 2 mocks
Browse files Browse the repository at this point in the history
  • Loading branch information
kavir1698 committed May 16, 2024
1 parent 6954c59 commit a2727df
Showing 1 changed file with 53 additions and 53 deletions.
106 changes: 53 additions & 53 deletions datasetUtils/authenticate_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,14 @@ import (
type MockAuthenticator struct{}

func (m *MockAuthenticator) AuthenticateUser(httpClient *http.Client, APIServer string, username string, password string) (map[string]string, []string) {
if username == "" && password == "" {
return map[string]string{}, []string{}
}
return map[string]string{"username": "testuser", "password": "testpass"}, []string{"group1", "group2"}
}

func (m *MockAuthenticator) GetUserInfoFromToken(httpClient *http.Client, APIServer string, token string) (map[string]string, []string) {
return map[string]string{"username": "testuser", "password": "testpass"}, []string{"group1", "group2"}
return map[string]string{"username": "tokenuser", "password": "tokenpass"}, []string{"group3", "group4"}
}

func TestAuthenticate(t *testing.T) {
Expand All @@ -34,60 +37,57 @@ func TestAuthenticate(t *testing.T) {
wantUser map[string]string
wantGroup []string
}{
{
name: "Test with token",
token: "testtoken",
userpass: "testuser:testpass",
wantUser: map[string]string{
"username": "testuser",
"password": "testpass",
},
wantGroup: []string{"group1", "group2"},
},
{
name: "Test with empty token and userpass",
token: "",
userpass: "",
wantUser: map[string]string{
"username": "testuser",
"password": "testpass",
},
wantGroup: []string{"group1", "group2"},
{
name: "Test with token",
token: "testtoken",
userpass: "",
wantUser: map[string]string{
"username": "tokenuser",
"password": "tokenpass",
},
{
name: "Test with empty token and non-empty userpass",
token: "",
userpass: "testuser:testpass",
wantUser: map[string]string{
"username": "testuser",
"password": "testpass",
},
wantGroup: []string{"group1", "group2"},
wantGroup: []string{"group3", "group4"},
},
{
name: "Test with empty token and userpass",
token: "",
userpass: "",
wantUser: map[string]string{},
wantGroup: []string{},
},
{
name: "Test with empty token and non-empty userpass",
token: "",
userpass: "testuser:testpass",
wantUser: map[string]string{
"username": "testuser",
"password": "testpass",
},
{
name: "Test with non-empty token and empty userpass",
token: "testtoken",
userpass: "",
wantUser: map[string]string{
"username": "testuser",
"password": "testpass",
},
wantGroup: []string{"group1", "group2"},
wantGroup: []string{"group1", "group2"},
},
{
name: "Test with non-empty token and empty userpass",
token: "testtoken",
userpass: "",
wantUser: map[string]string{
"username": "tokenuser",
"password": "tokenpass",
},
}
wantGroup: []string{"group3", "group4"},
},
}

for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
httpClient := server.Client()
user, group := Authenticate(auth, httpClient, server.URL, &tt.token, &tt.userpass)

if !reflect.DeepEqual(user, tt.wantUser) {
t.Errorf("got %v, want %v", user, tt.wantUser)
}

if !reflect.DeepEqual(group, tt.wantGroup) {
t.Errorf("got %v, want %v", group, tt.wantGroup)
}
})
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
httpClient := server.Client()
user, group := Authenticate(auth, httpClient, server.URL, &tt.token, &tt.userpass)

if !reflect.DeepEqual(user, tt.wantUser) {
t.Errorf("got %v, want %v", user, tt.wantUser)
}

if !reflect.DeepEqual(group, tt.wantGroup) {
t.Errorf("got %v, want %v", group, tt.wantGroup)
}
})
}
}

0 comments on commit a2727df

Please sign in to comment.