[MM-44842] Add restore_group permission (#21806)
* Add restore_group permission * Fix tests failing due to new permission in groups * Add new migration to add custom_group_restore permission * Add mock for new migration function * Fix tests Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
5f6fc3150d
Коммит
79193240e9
@@ -168,6 +168,7 @@ func TestDoAdvancedPermissionsMigration(t *testing.T) {
|
||||
model.PermissionCreateCustomGroup.Id,
|
||||
model.PermissionEditCustomGroup.Id,
|
||||
model.PermissionDeleteCustomGroup.Id,
|
||||
model.PermissionRestoreCustomGroup.Id,
|
||||
model.PermissionManageCustomGroupMembers.Id,
|
||||
},
|
||||
"system_post_all": {
|
||||
@@ -228,6 +229,7 @@ func TestDoEmojisPermissionsMigration(t *testing.T) {
|
||||
model.PermissionEditCustomGroup.Id,
|
||||
model.PermissionDeleteCustomGroup.Id,
|
||||
model.PermissionManageCustomGroupMembers.Id,
|
||||
model.PermissionRestoreCustomGroup.Id,
|
||||
model.PermissionListPublicTeams.Id,
|
||||
model.PermissionJoinPublicTeams.Id,
|
||||
model.PermissionCreateDirectChannel.Id,
|
||||
|
||||
@@ -994,6 +994,30 @@ func (a *App) getAddCustomUserGroupsPermissions() (permissionsMap, error) {
|
||||
return t, nil
|
||||
}
|
||||
|
||||
func (a *App) getAddCustomUserGroupsPermissionRestore() (permissionsMap, error) {
|
||||
t := []permissionTransformation{}
|
||||
|
||||
customGroupPermissions := []string{
|
||||
model.PermissionRestoreCustomGroup.Id,
|
||||
}
|
||||
|
||||
t = append(t, permissionTransformation{
|
||||
On: isExactRole(model.SystemUserRoleId),
|
||||
Add: customGroupPermissions,
|
||||
})
|
||||
|
||||
t = append(t, permissionTransformation{
|
||||
On: isExactRole(model.SystemAdminRoleId),
|
||||
Add: customGroupPermissions,
|
||||
})
|
||||
|
||||
t = append(t, permissionTransformation{
|
||||
On: isExactRole(model.SystemCustomGroupAdminRoleId),
|
||||
Add: customGroupPermissions,
|
||||
})
|
||||
return t, nil
|
||||
}
|
||||
|
||||
func (a *App) getAddPlaybooksPermissions() (permissionsMap, error) {
|
||||
transformations := []permissionTransformation{}
|
||||
|
||||
@@ -1110,6 +1134,7 @@ func (s *Server) doPermissionsMigrations() error {
|
||||
{Key: model.MigrationKeyAddCustomUserGroupsPermissions, Migration: a.getAddCustomUserGroupsPermissions},
|
||||
{Key: model.MigrationKeyAddPlayboosksManageRolesPermissions, Migration: a.getPlaybooksPermissionsAddManageRoles},
|
||||
{Key: model.MigrationKeyAddProductsBoardsPermissions, Migration: a.getProductsBoardsPermissions},
|
||||
{Key: model.MigrationKeyAddCustomUserGroupsPermissionRestore, Migration: a.getAddCustomUserGroupsPermissionRestore},
|
||||
}
|
||||
|
||||
roles, err := s.Store().Role().GetAll()
|
||||
|
||||
Ссылка в новой задаче
Block a user