Skip to content
Snippets Groups Projects
Commit f9bc7df6 authored by Fabian Seidl's avatar Fabian Seidl
Browse files

finished user api tests, minor refactoring

parent 31723efa
Branches main
No related tags found
No related merge requests found
This commit is part of merge request !308. Comments created here will be created in the context of that merge request.
...@@ -6,6 +6,7 @@ import ( ...@@ -6,6 +6,7 @@ import (
"testing" "testing"
apb "code.fbi.h-da.de/danet/gosdn/api/go/gosdn/rbac" apb "code.fbi.h-da.de/danet/gosdn/api/go/gosdn/rbac"
"github.com/google/uuid"
) )
func TestCreateUsers(t *testing.T) { func TestCreateUsers(t *testing.T) {
...@@ -86,7 +87,7 @@ func TestGetUser(t *testing.T) { ...@@ -86,7 +87,7 @@ func TestGetUser(t *testing.T) {
args: args{ args: args{
ctx: context.TODO(), ctx: context.TODO(),
addr: testAPIEndpoint, addr: testAPIEndpoint,
name: "foo", name: "foos",
}, },
want: nil, want: nil,
wantErr: true, wantErr: true,
...@@ -100,6 +101,7 @@ func TestGetUser(t *testing.T) { ...@@ -100,6 +101,7 @@ func TestGetUser(t *testing.T) {
t.Errorf("GetUser() error = %v, wantErr %v", err, tt.wantErr) t.Errorf("GetUser() error = %v, wantErr %v", err, tt.wantErr)
return return
} }
if got != nil && got.Status == tt.want.Status { if got != nil && got.Status == tt.want.Status {
if got.User.Name != tt.want.User.Name || got.User.Id != tt.want.User.Id { if got.User.Name != tt.want.User.Name || got.User.Id != tt.want.User.Id {
t.Errorf("GetUser() = %v, want %v", got, tt.want) t.Errorf("GetUser() = %v, want %v", got, tt.want)
...@@ -114,6 +116,11 @@ func TestGetUser(t *testing.T) { ...@@ -114,6 +116,11 @@ func TestGetUser(t *testing.T) {
} }
func TestGetAllUsers(t *testing.T) { func TestGetAllUsers(t *testing.T) {
err := clearAndCreateAuthTestSetup()
if err != nil {
t.Fatalf("%v", err)
}
type args struct { type args struct {
ctx context.Context ctx context.Context
addr string addr string
...@@ -122,10 +129,27 @@ func TestGetAllUsers(t *testing.T) { ...@@ -122,10 +129,27 @@ func TestGetAllUsers(t *testing.T) {
name string name string
args args args args
want *apb.GetUsersResponse want *apb.GetUsersResponse
wantLen int
wantErr bool wantErr bool
}{ }{
// TODO: Add test cases. {
name: "default get users",
args: args{
ctx: context.TODO(),
addr: testAPIEndpoint,
},
want: &apb.GetUsersResponse{
Status: apb.Status_STATUS_OK,
User: []*apb.User{
{Name: "testAdmin"},
{Name: "testUser"},
{Name: "testRandom"}},
},
wantLen: 3,
wantErr: false,
},
} }
for _, tt := range tests { for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) { t.Run(tt.name, func(t *testing.T) {
got, err := GetAllUsers(tt.args.ctx, tt.args.addr) got, err := GetAllUsers(tt.args.ctx, tt.args.addr)
...@@ -133,8 +157,24 @@ func TestGetAllUsers(t *testing.T) { ...@@ -133,8 +157,24 @@ func TestGetAllUsers(t *testing.T) {
t.Errorf("GetAllUsers() error = %v, wantErr %v", err, tt.wantErr) t.Errorf("GetAllUsers() error = %v, wantErr %v", err, tt.wantErr)
return return
} }
if !reflect.DeepEqual(got, tt.want) {
t.Errorf("GetAllUsers() = %v, want %v", got, tt.want) if got != nil && got.Status == apb.Status_STATUS_OK {
if len(got.User) != tt.wantLen {
t.Errorf("User.GetUsers() = %v, want %v", got, tt.want)
}
for _, gotU := range got.User {
containsExpected := false
for _, wantU := range tt.want.User {
if gotU.Name == wantU.Name {
containsExpected = true
break
}
}
if !containsExpected {
t.Errorf("User.GetUsers() = %v, want %v", got, tt.want)
}
}
} }
}) })
} }
...@@ -152,8 +192,40 @@ func TestUpdateUsers(t *testing.T) { ...@@ -152,8 +192,40 @@ func TestUpdateUsers(t *testing.T) {
want *apb.UpdateUsersResponse want *apb.UpdateUsersResponse
wantErr bool wantErr bool
}{ }{
// TODO: Add test cases. {
name: "default update user",
args: args{
ctx: context.TODO(),
addr: testAPIEndpoint,
users: []*apb.User{
{
Id: adminID,
Name: "sth Else",
},
},
},
want: &apb.UpdateUsersResponse{
Status: apb.Status_STATUS_OK,
},
wantErr: false,
},
{
name: "error update user",
args: args{
ctx: context.TODO(),
addr: testAPIEndpoint,
users: []*apb.User{
{
Id: uuid.NewString(),
Name: "not a User",
},
},
},
want: nil,
wantErr: true,
},
} }
for _, tt := range tests { for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) { t.Run(tt.name, func(t *testing.T) {
got, err := UpdateUsers(tt.args.ctx, tt.args.addr, tt.args.users) got, err := UpdateUsers(tt.args.ctx, tt.args.addr, tt.args.users)
...@@ -161,7 +233,7 @@ func TestUpdateUsers(t *testing.T) { ...@@ -161,7 +233,7 @@ func TestUpdateUsers(t *testing.T) {
t.Errorf("UpdateUsers() error = %v, wantErr %v", err, tt.wantErr) t.Errorf("UpdateUsers() error = %v, wantErr %v", err, tt.wantErr)
return return
} }
if !reflect.DeepEqual(got, tt.want) { if got != nil && got.Status != tt.want.Status {
t.Errorf("UpdateUsers() = %v, want %v", got, tt.want) t.Errorf("UpdateUsers() = %v, want %v", got, tt.want)
} }
}) })
...@@ -180,7 +252,28 @@ func TestDeleteUsers(t *testing.T) { ...@@ -180,7 +252,28 @@ func TestDeleteUsers(t *testing.T) {
want *apb.DeleteUsersResponse want *apb.DeleteUsersResponse
wantErr bool wantErr bool
}{ }{
// TODO: Add test cases. {
name: "default delete users",
args: args{
ctx: context.TODO(),
addr: testAPIEndpoint,
userNames: []string{"testUser", "testAdmin"},
},
want: &apb.DeleteUsersResponse{
Status: apb.Status_STATUS_OK,
},
wantErr: false,
},
{
name: "error delete users",
args: args{
ctx: context.TODO(),
addr: testAPIEndpoint,
userNames: []string{"no User"},
},
want: nil,
wantErr: true,
},
} }
for _, tt := range tests { for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) { t.Run(tt.name, func(t *testing.T) {
...@@ -189,8 +282,9 @@ func TestDeleteUsers(t *testing.T) { ...@@ -189,8 +282,9 @@ func TestDeleteUsers(t *testing.T) {
t.Errorf("DeleteUsers() error = %v, wantErr %v", err, tt.wantErr) t.Errorf("DeleteUsers() error = %v, wantErr %v", err, tt.wantErr)
return return
} }
if !reflect.DeepEqual(got, tt.want) {
t.Errorf("DeleteUsers() = %v, want %v", got, tt.want) if got != nil && got.Status != tt.want.Status {
t.Errorf("User.DeleteUsers() = %v, want %v", got, tt.want)
} }
}) })
} }
......
...@@ -167,6 +167,7 @@ func TestUser_GetUsers(t *testing.T) { ...@@ -167,6 +167,7 @@ func TestUser_GetUsers(t *testing.T) {
break break
} }
} }
if !containsExpected { if !containsExpected {
t.Errorf("User.GetUsers() = %v, want %v", got, tt.want) t.Errorf("User.GetUsers() = %v, want %v", got, tt.want)
} }
...@@ -222,6 +223,7 @@ func TestUser_UpdateUsers(t *testing.T) { ...@@ -222,6 +223,7 @@ func TestUser_UpdateUsers(t *testing.T) {
t.Errorf("User.UpdateUsers() error = %v, wantErr %v", err, tt.wantErr) t.Errorf("User.UpdateUsers() error = %v, wantErr %v", err, tt.wantErr)
return return
} }
if got != nil && got.Status != tt.want.Status { if got != nil && got.Status != tt.want.Status {
t.Errorf("User.UpdateUsers() = %v, want %v", got, tt.want) t.Errorf("User.UpdateUsers() = %v, want %v", got, tt.want)
} }
...@@ -265,6 +267,7 @@ func TestUser_DeleteUsers(t *testing.T) { ...@@ -265,6 +267,7 @@ func TestUser_DeleteUsers(t *testing.T) {
t.Errorf("User.DeleteUsers() error = %v, wantErr %v", err, tt.wantErr) t.Errorf("User.DeleteUsers() error = %v, wantErr %v", err, tt.wantErr)
return return
} }
if got != nil && got.Status != tt.want.Status { if got != nil && got.Status != tt.want.Status {
t.Errorf("User.DeleteUsers() = %v, want %v", got, tt.want) t.Errorf("User.DeleteUsers() = %v, want %v", got, tt.want)
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment