feat(server): support SetUser api

This commit is contained in:
hexxa 2021-08-24 21:35:28 +08:00 committed by Hexxa
parent c2673cd416
commit 9cd6d6f84b
4 changed files with 67 additions and 2 deletions

View file

@ -162,7 +162,7 @@ func TestUsersHandlers(t *testing.T) {
}
})
t.Run("test users APIs: Login-AddUser-ListUsers-DelUser-ListUsers", func(t *testing.T) {
t.Run("test users APIs: Login-AddUser-ListUsers-SetUser-ListUsers-DelUser-ListUsers", func(t *testing.T) {
resp, _, errs := usersCl.Login(adminName, adminNewPwd)
if len(errs) > 0 {
t.Fatal(errs)
@ -172,7 +172,7 @@ func TestUsersHandlers(t *testing.T) {
token := client.GetCookie(resp.Cookies(), su.TokenCookie)
userName, userPwd, userRole := "user_admin", "1234", userstore.UserRole
userName, userPwd, userRole := "new_user", "1234", userstore.UserRole
resp, auResp, errs := usersCl.AddUser(userName, userPwd, userRole, token)
if len(errs) > 0 {
t.Fatal(errs)
@ -211,6 +211,41 @@ func TestUsersHandlers(t *testing.T) {
}
}
newRole, newQuota := userstore.AdminRole, &userstore.Quota{
SpaceLimit: 3,
UploadSpeedLimit: 3,
DownloadSpeedLimit: 3,
}
resp, _, errs = usersCl.SetUser(newUserID, newRole, newQuota, token)
if len(errs) > 0 {
t.Fatal(errs)
} else if resp.StatusCode != 200 {
t.Fatal(resp.StatusCode)
}
resp, lsResp, errs = usersCl.ListUsers(token)
if len(errs) > 0 {
t.Fatal(errs)
} else if resp.StatusCode != 200 {
t.Fatal(resp.StatusCode)
}
for _, user := range lsResp.Users {
if user.ID == newUserID {
if user.Role != newRole {
t.Fatal(fmt.Errorf("incorrect role (%v)", user.Role))
}
if user.Quota.SpaceLimit != newQuota.SpaceLimit {
t.Fatal(fmt.Errorf("incorrect quota (%v)", newQuota.SpaceLimit))
}
if user.Quota.UploadSpeedLimit != newQuota.UploadSpeedLimit {
t.Fatal(fmt.Errorf("incorrect quota (%v)", newQuota.UploadSpeedLimit))
}
if user.Quota.DownloadSpeedLimit != newQuota.DownloadSpeedLimit {
t.Fatal(fmt.Errorf("incorrect quota (%v)", newQuota.DownloadSpeedLimit))
}
}
}
resp, _, errs = usersCl.DelUser(auResp.ID, token)
if len(errs) > 0 {
t.Fatal(errs)