mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
Add additional unit test for bot/user access (#24206)
* add unit test * add unit test * add unit test * update additional test
This commit is contained in:
parent
ab542c4dff
commit
0a499770e6
@ -185,6 +185,32 @@ func TestSessionHasPermissionToManageBot(t *testing.T) {
|
|||||||
th.RemovePermissionFromRole(model.PermissionManageOthersBots.Id, model.SystemUserRoleId)
|
th.RemovePermissionFromRole(model.PermissionManageOthersBots.Id, model.SystemUserRoleId)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
t.Run("test user manager access", func(t *testing.T) {
|
||||||
|
session := model.Session{
|
||||||
|
UserId: th.BasicUser2.Id,
|
||||||
|
Roles: model.SystemUserManagerRoleId,
|
||||||
|
}
|
||||||
|
|
||||||
|
// test non bot, contains wrapped error
|
||||||
|
err = th.App.SessionHasPermissionToManageBot(session, "12345")
|
||||||
|
assert.NotNil(t, err)
|
||||||
|
assert.Equal(t, "store.sql_bot.get.missing.app_error", err.Id)
|
||||||
|
assert.Error(t, err.Unwrap())
|
||||||
|
|
||||||
|
// test existing bot, without PermissionManageOthersBots - no wrapped error
|
||||||
|
err = th.App.SessionHasPermissionToManageBot(session, bot.UserId)
|
||||||
|
assert.NotNil(t, err)
|
||||||
|
assert.Equal(t, "store.sql_bot.get.missing.app_error", err.Id)
|
||||||
|
assert.NoError(t, err.Unwrap())
|
||||||
|
|
||||||
|
// test with correct permissions
|
||||||
|
th.AddPermissionToRole(model.PermissionManageOthersBots.Id, model.SystemUserManagerRoleId)
|
||||||
|
err = th.App.SessionHasPermissionToManageBot(session, bot.UserId)
|
||||||
|
assert.Nil(t, err)
|
||||||
|
|
||||||
|
th.RemovePermissionFromRole(model.PermissionManageOthersBots.Id, model.SystemUserManagerRoleId)
|
||||||
|
})
|
||||||
|
|
||||||
t.Run("test sysadmin role", func(t *testing.T) {
|
t.Run("test sysadmin role", func(t *testing.T) {
|
||||||
session := model.Session{
|
session := model.Session{
|
||||||
UserId: th.SystemAdminUser.Id,
|
UserId: th.SystemAdminUser.Id,
|
||||||
@ -229,6 +255,17 @@ func TestSessionHasPermissionToUser(t *testing.T) {
|
|||||||
th.AddPermissionToRole(model.PermissionEditOtherUsers.Id, model.SystemUserManagerRoleId)
|
th.AddPermissionToRole(model.PermissionEditOtherUsers.Id, model.SystemUserManagerRoleId)
|
||||||
assert.True(t, th.App.SessionHasPermissionToUser(session, th.BasicUser2.Id))
|
assert.True(t, th.App.SessionHasPermissionToUser(session, th.BasicUser2.Id))
|
||||||
th.RemovePermissionFromRole(model.PermissionEditOtherUsers.Id, model.SystemUserManagerRoleId)
|
th.RemovePermissionFromRole(model.PermissionEditOtherUsers.Id, model.SystemUserManagerRoleId)
|
||||||
|
|
||||||
|
bot, err := th.App.CreateBot(th.Context, &model.Bot{
|
||||||
|
Username: "username",
|
||||||
|
Description: "a bot",
|
||||||
|
OwnerId: th.BasicUser2.Id,
|
||||||
|
})
|
||||||
|
require.Nil(t, err)
|
||||||
|
assert.NotNil(t, bot)
|
||||||
|
defer th.App.PermanentDeleteBot(bot.UserId)
|
||||||
|
|
||||||
|
assert.False(t, th.App.SessionHasPermissionToUser(session, bot.UserId))
|
||||||
})
|
})
|
||||||
|
|
||||||
t.Run("test admin user access", func(t *testing.T) {
|
t.Run("test admin user access", func(t *testing.T) {
|
||||||
|
Loading…
Reference in New Issue
Block a user