From 7dabc588330d6fb89f85e1850f3693bb51834c69 Mon Sep 17 00:00:00 2001 From: Ieva Date: Fri, 20 Jun 2025 08:07:54 +0100 Subject: [PATCH] RBAC: Extend folder tests for breadcrumbs (#107002) extend folder tests for breadcrumbs --- pkg/api/folder_test.go | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/pkg/api/folder_test.go b/pkg/api/folder_test.go index 71a532c5381..9a4d42274bc 100644 --- a/pkg/api/folder_test.go +++ b/pkg/api/folder_test.go @@ -440,7 +440,9 @@ func TestFolderGetAPIEndpoint(t *testing.T) { expectedParentOrgIDs: []int64{0, 0}, expectedParentTitles: []string{"parent title", "subfolder title"}, permissions: []accesscontrol.Permission{ - {Action: dashboards.ActionFoldersRead, Scope: dashboards.ScopeFoldersProvider.GetResourceAllScope()}, + {Action: dashboards.ActionFoldersRead, Scope: dashboards.ScopeFoldersProvider.GetResourceScopeUID("uid")}, + {Action: dashboards.ActionFoldersRead, Scope: dashboards.ScopeFoldersProvider.GetResourceScopeUID("parent")}, + {Action: dashboards.ActionFoldersRead, Scope: dashboards.ScopeFoldersProvider.GetResourceScopeUID("subfolder")}, }, }, { @@ -455,6 +457,19 @@ func TestFolderGetAPIEndpoint(t *testing.T) { {Action: dashboards.ActionFoldersRead, Scope: dashboards.ScopeFoldersProvider.GetResourceScopeUID("uid")}, }, }, + { + description: "get folder by UID should return some parent folder titles and some parent folders as redacted if nested folder are enabled and user only has read access to some parent folders", + URL: "/api/folders/uid", + expectedCode: http.StatusOK, + features: featuremgmt.WithFeatures(featuremgmt.FlagNestedFolders), + expectedParentUIDs: []string{REDACTED, "subfolder"}, + expectedParentOrgIDs: []int64{0, 0}, + expectedParentTitles: []string{REDACTED, "subfolder title"}, + permissions: []accesscontrol.Permission{ + {Action: dashboards.ActionFoldersRead, Scope: dashboards.ScopeFoldersProvider.GetResourceScopeUID("uid")}, + {Action: dashboards.ActionFoldersRead, Scope: dashboards.ScopeFoldersProvider.GetResourceScopeUID("subfolder")}, + }, + }, { description: "get folder by UID should not return parent folders if nested folder are disabled", URL: "/api/folders/uid",