github.com/masterhung0112/hk_server/v5@v5.0.0-20220302090640-ec71aef15e1c/api4/permissions_test.go (about) 1 // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. 2 // See LICENSE.txt for license information. 3 4 package api4 5 6 import ( 7 "testing" 8 9 "github.com/stretchr/testify/assert" 10 11 "github.com/masterhung0112/hk_server/v5/model" 12 ) 13 14 func TestGetAncillaryPermissions(t *testing.T) { 15 th := Setup(t).InitBasic() 16 defer th.TearDown() 17 18 var subsectionPermissions []string 19 var expectedAncillaryPermissions []string 20 t.Run("Valid Case, Passing in SubSection Permissions", func(t *testing.T) { 21 subsectionPermissions = []string{model.PERMISSION_SYSCONSOLE_READ_REPORTING_SITE_STATISTICS.Id} 22 expectedAncillaryPermissions = []string{model.PERMISSION_GET_ANALYTICS.Id} 23 actualAncillaryPermissions, resp := th.Client.GetAncillaryPermissions(subsectionPermissions) 24 CheckNoError(t, resp) 25 assert.Equal(t, append(subsectionPermissions, expectedAncillaryPermissions...), actualAncillaryPermissions) 26 }) 27 28 t.Run("Invalid Case, Passing in SubSection Permissions That Don't Exist", func(t *testing.T) { 29 subsectionPermissions = []string{"All", "The", "Things", "She", "Said", "Running", "Through", "My", "Head"} 30 expectedAncillaryPermissions = []string{} 31 actualAncillaryPermissions, resp := th.Client.GetAncillaryPermissions(subsectionPermissions) 32 CheckNoError(t, resp) 33 assert.Equal(t, append(subsectionPermissions, expectedAncillaryPermissions...), actualAncillaryPermissions) 34 }) 35 36 t.Run("Invalid Case, Passing in nothing", func(t *testing.T) { 37 subsectionPermissions = []string{} 38 expectedAncillaryPermissions = []string{} 39 _, resp := th.Client.GetAncillaryPermissions(subsectionPermissions) 40 CheckBadRequestStatus(t, resp) 41 }) 42 }