коммит произвёл
GitHub
родитель
43e797010b
Коммит
3b1b8d9114
@@ -1631,82 +1631,6 @@ func TestUpdateChannelMemberRolesChangingGuest(t *testing.T) {
|
||||
})
|
||||
}
|
||||
|
||||
func TestUpdateChannelMemberRolesRequireUser(t *testing.T) {
|
||||
mainHelper.Parallel(t)
|
||||
th := Setup(t).InitBasic()
|
||||
|
||||
t.Run("empty roles string requires user or guest scheme role", func(t *testing.T) {
|
||||
user := model.User{Email: strings.ToLower(model.NewId()) + "success+test@example.com", Nickname: "Tester", Username: "tester" + model.NewId(), Password: "passwd1", AuthService: ""}
|
||||
ruser, _ := th.App.CreateUser(th.Context, &user)
|
||||
|
||||
_, _, appErr := th.App.AddUserToTeam(th.Context, th.BasicTeam.Id, ruser.Id, "")
|
||||
require.Nil(t, appErr)
|
||||
|
||||
_, appErr = th.App.AddUserToChannel(th.Context, ruser, th.BasicChannel, false)
|
||||
require.Nil(t, appErr)
|
||||
|
||||
member, appErr := th.App.GetChannelMember(th.Context, th.BasicChannel.Id, ruser.Id)
|
||||
require.Nil(t, appErr)
|
||||
require.True(t, member.SchemeUser)
|
||||
require.False(t, member.SchemeGuest)
|
||||
|
||||
_, appErr = th.App.UpdateChannelMemberRoles(th.Context, th.BasicChannel.Id, ruser.Id, "")
|
||||
require.NotNil(t, appErr)
|
||||
require.Equal(t, "api.channel.update_channel_member_roles.unset_user_scheme.app_error", appErr.Id)
|
||||
})
|
||||
|
||||
t.Run("admin role requires user or guest scheme role", func(t *testing.T) {
|
||||
user := model.User{Email: strings.ToLower(model.NewId()) + "success+test@example.com", Nickname: "Tester", Username: "tester" + model.NewId(), Password: "passwd1", AuthService: ""}
|
||||
ruser, _ := th.App.CreateUser(th.Context, &user)
|
||||
|
||||
_, _, appErr := th.App.AddUserToTeam(th.Context, th.BasicTeam.Id, ruser.Id, "")
|
||||
require.Nil(t, appErr)
|
||||
|
||||
_, appErr = th.App.AddUserToChannel(th.Context, ruser, th.BasicChannel, false)
|
||||
require.Nil(t, appErr)
|
||||
|
||||
_, appErr = th.App.UpdateChannelMemberRoles(th.Context, th.BasicChannel.Id, ruser.Id, "channel_admin")
|
||||
require.NotNil(t, appErr)
|
||||
require.Equal(t, "api.channel.update_channel_member_roles.unset_user_scheme.app_error", appErr.Id)
|
||||
})
|
||||
|
||||
t.Run("valid user and admin roles update succeeds", func(t *testing.T) {
|
||||
user := model.User{Email: strings.ToLower(model.NewId()) + "success+test@example.com", Nickname: "Tester", Username: "tester" + model.NewId(), Password: "passwd1", AuthService: ""}
|
||||
ruser, _ := th.App.CreateUser(th.Context, &user)
|
||||
|
||||
_, _, appErr := th.App.AddUserToTeam(th.Context, th.BasicTeam.Id, ruser.Id, "")
|
||||
require.Nil(t, appErr)
|
||||
|
||||
_, appErr = th.App.AddUserToChannel(th.Context, ruser, th.BasicChannel, false)
|
||||
require.Nil(t, appErr)
|
||||
|
||||
updatedMember, appErr := th.App.UpdateChannelMemberRoles(th.Context, th.BasicChannel.Id, ruser.Id, "channel_user channel_admin")
|
||||
require.Nil(t, appErr)
|
||||
require.True(t, updatedMember.SchemeUser)
|
||||
require.True(t, updatedMember.SchemeAdmin)
|
||||
require.False(t, updatedMember.SchemeGuest)
|
||||
})
|
||||
|
||||
t.Run("removing admin role while keeping user role succeeds", func(t *testing.T) {
|
||||
user := model.User{Email: strings.ToLower(model.NewId()) + "success+test@example.com", Nickname: "Tester", Username: "tester" + model.NewId(), Password: "passwd1", AuthService: ""}
|
||||
ruser, _ := th.App.CreateUser(th.Context, &user)
|
||||
|
||||
_, _, appErr := th.App.AddUserToTeam(th.Context, th.BasicTeam.Id, ruser.Id, "")
|
||||
require.Nil(t, appErr)
|
||||
|
||||
_, appErr = th.App.AddUserToChannel(th.Context, ruser, th.BasicChannel, false)
|
||||
require.Nil(t, appErr)
|
||||
|
||||
_, appErr = th.App.UpdateChannelMemberRoles(th.Context, th.BasicChannel.Id, ruser.Id, "channel_user channel_admin")
|
||||
require.Nil(t, appErr)
|
||||
|
||||
updatedMember, appErr := th.App.UpdateChannelMemberRoles(th.Context, th.BasicChannel.Id, ruser.Id, "channel_user")
|
||||
require.Nil(t, appErr)
|
||||
require.True(t, updatedMember.SchemeUser)
|
||||
require.False(t, updatedMember.SchemeAdmin)
|
||||
})
|
||||
}
|
||||
|
||||
func TestDefaultChannelNames(t *testing.T) {
|
||||
mainHelper.Parallel(t)
|
||||
th := Setup(t)
|
||||
|
||||
Ссылка в новой задаче
Block a user