Fix MM64178 (#30957)
Co-authored-by: Mattermost Build <build@mattermost.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
edbfc3d933
Коммит
1b7d27707d
@@ -3976,12 +3976,27 @@ func TestUpdateChannelMemberSchemeRoles(t *testing.T) {
|
||||
|
||||
th.LoginBasic()
|
||||
|
||||
// cannot change the user scheme to false
|
||||
s1 := &model.SchemeRoles{
|
||||
SchemeAdmin: false,
|
||||
SchemeUser: false,
|
||||
SchemeGuest: false,
|
||||
}
|
||||
_, err := SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, s1)
|
||||
require.Error(t, err)
|
||||
|
||||
tm1, _, err := SystemAdminClient.GetChannelMember(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, "")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, false, tm1.SchemeGuest)
|
||||
assert.Equal(t, true, tm1.SchemeUser)
|
||||
assert.Equal(t, false, tm1.SchemeAdmin)
|
||||
|
||||
s2 := &model.SchemeRoles{
|
||||
SchemeAdmin: false,
|
||||
SchemeUser: true,
|
||||
SchemeGuest: false,
|
||||
}
|
||||
_, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, s2)
|
||||
require.NoError(t, err)
|
||||
|
||||
waiting := true
|
||||
@@ -3998,20 +4013,6 @@ func TestUpdateChannelMemberSchemeRoles(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
tm1, _, err := SystemAdminClient.GetChannelMember(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, "")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, false, tm1.SchemeGuest)
|
||||
assert.Equal(t, false, tm1.SchemeUser)
|
||||
assert.Equal(t, false, tm1.SchemeAdmin)
|
||||
|
||||
s2 := &model.SchemeRoles{
|
||||
SchemeAdmin: false,
|
||||
SchemeUser: true,
|
||||
SchemeGuest: false,
|
||||
}
|
||||
_, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, s2)
|
||||
require.NoError(t, err)
|
||||
|
||||
tm2, _, err := SystemAdminClient.GetChannelMember(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, "")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, false, tm2.SchemeGuest)
|
||||
@@ -4025,7 +4026,7 @@ func TestUpdateChannelMemberSchemeRoles(t *testing.T) {
|
||||
|
||||
s3 := &model.SchemeRoles{
|
||||
SchemeAdmin: true,
|
||||
SchemeUser: false,
|
||||
SchemeUser: true,
|
||||
SchemeGuest: false,
|
||||
}
|
||||
_, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, s3)
|
||||
@@ -4034,60 +4035,46 @@ func TestUpdateChannelMemberSchemeRoles(t *testing.T) {
|
||||
tm3, _, err := SystemAdminClient.GetChannelMember(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, "")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, false, tm3.SchemeGuest)
|
||||
assert.Equal(t, false, tm3.SchemeUser)
|
||||
assert.Equal(t, true, tm3.SchemeUser)
|
||||
assert.Equal(t, true, tm3.SchemeAdmin)
|
||||
|
||||
s4 := &model.SchemeRoles{
|
||||
SchemeAdmin: true,
|
||||
SchemeUser: true,
|
||||
SchemeGuest: false,
|
||||
}
|
||||
_, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, s4)
|
||||
require.NoError(t, err)
|
||||
|
||||
tm4, _, err := SystemAdminClient.GetChannelMember(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, "")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, false, tm4.SchemeGuest)
|
||||
assert.Equal(t, true, tm4.SchemeUser)
|
||||
assert.Equal(t, true, tm4.SchemeAdmin)
|
||||
|
||||
s5 := &model.SchemeRoles{
|
||||
SchemeAdmin: false,
|
||||
SchemeUser: false,
|
||||
SchemeGuest: true,
|
||||
}
|
||||
// cannot set user to guest for a single channel
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, s5)
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, s4)
|
||||
require.Error(t, err)
|
||||
CheckBadRequestStatus(t, resp)
|
||||
|
||||
s6 := &model.SchemeRoles{
|
||||
s5 := &model.SchemeRoles{
|
||||
SchemeAdmin: false,
|
||||
SchemeUser: true,
|
||||
SchemeGuest: true,
|
||||
}
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, s6)
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, s5)
|
||||
require.Error(t, err)
|
||||
CheckBadRequestStatus(t, resp)
|
||||
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), model.NewId(), th.BasicUser.Id, s4)
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), model.NewId(), th.BasicUser.Id, s3)
|
||||
require.Error(t, err)
|
||||
CheckForbiddenStatus(t, resp)
|
||||
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, model.NewId(), s4)
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, model.NewId(), s3)
|
||||
require.Error(t, err)
|
||||
CheckNotFoundStatus(t, resp)
|
||||
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), "ASDF", th.BasicUser.Id, s4)
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), "ASDF", th.BasicUser.Id, s3)
|
||||
require.Error(t, err)
|
||||
CheckBadRequestStatus(t, resp)
|
||||
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, "ASDF", s4)
|
||||
resp, err = SystemAdminClient.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, "ASDF", s3)
|
||||
require.Error(t, err)
|
||||
CheckBadRequestStatus(t, resp)
|
||||
|
||||
th.LoginBasic2()
|
||||
resp, err = th.Client.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, s4)
|
||||
resp, err = th.Client.UpdateChannelMemberSchemeRoles(context.Background(), th.BasicChannel.Id, th.BasicUser.Id, s3)
|
||||
require.Error(t, err)
|
||||
CheckForbiddenStatus(t, resp)
|
||||
|
||||
|
||||
@@ -3333,18 +3333,19 @@ func TestUpdateTeamMemberSchemeRoles(t *testing.T) {
|
||||
SystemAdminClient := th.SystemAdminClient
|
||||
th.LoginBasic()
|
||||
|
||||
// cannot change the user scheme to false
|
||||
s1 := &model.SchemeRoles{
|
||||
SchemeAdmin: false,
|
||||
SchemeUser: false,
|
||||
SchemeGuest: false,
|
||||
}
|
||||
_, err := SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, s1)
|
||||
require.NoError(t, err)
|
||||
require.Error(t, err)
|
||||
|
||||
tm1, _, err := SystemAdminClient.GetTeamMember(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, "")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, false, tm1.SchemeGuest)
|
||||
assert.Equal(t, false, tm1.SchemeUser)
|
||||
assert.Equal(t, true, tm1.SchemeUser)
|
||||
assert.Equal(t, false, tm1.SchemeAdmin)
|
||||
|
||||
s2 := &model.SchemeRoles{
|
||||
@@ -3368,7 +3369,7 @@ func TestUpdateTeamMemberSchemeRoles(t *testing.T) {
|
||||
|
||||
s3 := &model.SchemeRoles{
|
||||
SchemeAdmin: true,
|
||||
SchemeUser: false,
|
||||
SchemeUser: true,
|
||||
SchemeGuest: false,
|
||||
}
|
||||
_, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, s3)
|
||||
@@ -3377,71 +3378,57 @@ func TestUpdateTeamMemberSchemeRoles(t *testing.T) {
|
||||
tm3, _, err := SystemAdminClient.GetTeamMember(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, "")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, false, tm3.SchemeGuest)
|
||||
assert.Equal(t, false, tm3.SchemeUser)
|
||||
assert.Equal(t, true, tm3.SchemeUser)
|
||||
assert.Equal(t, true, tm3.SchemeAdmin)
|
||||
|
||||
s4 := &model.SchemeRoles{
|
||||
SchemeAdmin: true,
|
||||
SchemeUser: true,
|
||||
SchemeGuest: false,
|
||||
}
|
||||
_, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, s4)
|
||||
require.NoError(t, err)
|
||||
|
||||
tm4, _, err := SystemAdminClient.GetTeamMember(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, "")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, false, tm4.SchemeGuest)
|
||||
assert.Equal(t, true, tm4.SchemeUser)
|
||||
assert.Equal(t, true, tm4.SchemeAdmin)
|
||||
|
||||
s5 := &model.SchemeRoles{
|
||||
SchemeAdmin: false,
|
||||
SchemeUser: false,
|
||||
SchemeGuest: true,
|
||||
}
|
||||
|
||||
// cannot set user to guest for a single team
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, s5)
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, s4)
|
||||
require.Error(t, err)
|
||||
CheckBadRequestStatus(t, resp)
|
||||
|
||||
s6 := &model.SchemeRoles{
|
||||
s5 := &model.SchemeRoles{
|
||||
SchemeAdmin: false,
|
||||
SchemeUser: true,
|
||||
SchemeGuest: true,
|
||||
}
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, s6)
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, s5)
|
||||
require.Error(t, err)
|
||||
CheckBadRequestStatus(t, resp)
|
||||
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), model.NewId(), th.BasicUser.Id, s4)
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), model.NewId(), th.BasicUser.Id, s3)
|
||||
require.Error(t, err)
|
||||
CheckNotFoundStatus(t, resp)
|
||||
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, model.NewId(), s4)
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, model.NewId(), s3)
|
||||
require.Error(t, err)
|
||||
CheckNotFoundStatus(t, resp)
|
||||
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, guest.Id, s4)
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, guest.Id, s3)
|
||||
require.Error(t, err) // user is a guest, cannot be set as member or admin
|
||||
CheckBadRequestStatus(t, resp)
|
||||
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), "ASDF", th.BasicUser.Id, s4)
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), "ASDF", th.BasicUser.Id, s3)
|
||||
require.Error(t, err)
|
||||
CheckBadRequestStatus(t, resp)
|
||||
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, "ASDF", s4)
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, "ASDF", s3)
|
||||
require.Error(t, err)
|
||||
CheckBadRequestStatus(t, resp)
|
||||
|
||||
th.LoginBasic2()
|
||||
resp, err = th.Client.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, s4)
|
||||
resp, err = th.Client.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, th.BasicUser.Id, s3)
|
||||
require.Error(t, err)
|
||||
CheckForbiddenStatus(t, resp)
|
||||
|
||||
_, err = SystemAdminClient.Logout(context.Background())
|
||||
require.NoError(t, err)
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, th.SystemAdminUser.Id, s4)
|
||||
resp, err = SystemAdminClient.UpdateTeamMemberSchemeRoles(context.Background(), th.BasicTeam.Id, th.SystemAdminUser.Id, s3)
|
||||
require.Error(t, err)
|
||||
CheckUnauthorizedStatus(t, resp)
|
||||
}
|
||||
|
||||
Ссылка в новой задаче
Block a user