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  }