From 7321046cd6a9a16c42eceeea98e4b60b94414baa Mon Sep 17 00:00:00 2001 From: Bethuel Mmbaga Date: Fri, 26 Jul 2024 17:33:54 +0300 Subject: [PATCH] Remove redundant check for empty JWT groups (#2323) * Remove redundant check for empty group names in SetJWTGroups * add test --- management/server/account.go | 4 ---- management/server/account_test.go | 7 +++++++ 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/management/server/account.go b/management/server/account.go index 558de6fbb..16a2851bd 100644 --- a/management/server/account.go +++ b/management/server/account.go @@ -770,10 +770,6 @@ func (a *Account) GetPeer(peerID string) *nbpeer.Peer { // SetJWTGroups updates the user's auto groups by synchronizing JWT groups. // Returns true if there are changes in the JWT group membership. func (a *Account) SetJWTGroups(userID string, groupsNames []string) bool { - if len(groupsNames) == 0 { - return false - } - user, ok := a.Users[userID] if !ok { return false diff --git a/management/server/account_test.go b/management/server/account_test.go index 71b43bd65..45b4fbd6f 100644 --- a/management/server/account_test.go +++ b/management/server/account_test.go @@ -2219,6 +2219,13 @@ func TestAccount_SetJWTGroups(t *testing.T) { assert.Len(t, account.Users["user2"].AutoGroups, 1, "new group should be added") assert.Contains(t, account.Groups, account.Users["user2"].AutoGroups[0], "groups must contain group3 from user groups") }) + + t.Run("remove all JWT groups", func(t *testing.T) { + updated := account.SetJWTGroups("user1", []string{}) + assert.True(t, updated, "account should be updated") + assert.Len(t, account.Users["user1"].AutoGroups, 1, "only non-JWT groups should remain") + assert.Contains(t, account.Users["user1"].AutoGroups, "group1", " group1 should still be present") + }) } func TestAccount_UserGroupsAddToPeers(t *testing.T) {