|
|
|
@ -10,6 +10,7 @@ import ( |
|
|
|
|
"github.com/stretchr/testify/require" |
|
|
|
|
|
|
|
|
|
"github.com/grafana/grafana/pkg/services/accesscontrol" |
|
|
|
|
"github.com/grafana/grafana/pkg/services/org/orgimpl" |
|
|
|
|
"github.com/grafana/grafana/pkg/services/sqlstore" |
|
|
|
|
"github.com/grafana/grafana/pkg/setting" |
|
|
|
|
) |
|
|
|
@ -102,6 +103,7 @@ func TestAPIEndpoint_PutCurrentOrg_LegacyAccessControl(t *testing.T) { |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
setInitCtxSignedInOrgAdmin(sc.initCtx) |
|
|
|
|
sc.hs.orgService = orgimpl.ProvideService(sc.db, sc.cfg) |
|
|
|
|
t.Run("Admin can update current org", func(t *testing.T) { |
|
|
|
|
response := callAPI(sc.server, http.MethodPut, putCurrentOrgURL, input, t) |
|
|
|
|
assert.Equal(t, http.StatusOK, response.Code) |
|
|
|
@ -115,6 +117,8 @@ func TestAPIEndpoint_PutCurrentOrg_AccessControl(t *testing.T) { |
|
|
|
|
_, err := sc.db.CreateOrgWithMember("TestOrg", sc.initCtx.UserID) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
|
|
|
|
|
sc.hs.orgService = orgimpl.ProvideService(sc.db, sc.cfg) |
|
|
|
|
|
|
|
|
|
input := strings.NewReader(testUpdateOrgNameForm) |
|
|
|
|
t.Run("AccessControl allows updating current org with correct permissions", func(t *testing.T) { |
|
|
|
|
setAccessControlPermissions(sc.acmock, []accesscontrol.Permission{{Action: ActionOrgsWrite}}, sc.initCtx.OrgID) |
|
|
|
@ -423,7 +427,7 @@ func TestAPIEndpoint_PutOrg_LegacyAccessControl(t *testing.T) { |
|
|
|
|
cfg.RBACEnabled = false |
|
|
|
|
sc := setupHTTPServerWithCfg(t, true, cfg) |
|
|
|
|
setInitCtxSignedInViewer(sc.initCtx) |
|
|
|
|
|
|
|
|
|
sc.hs.orgService = orgimpl.ProvideService(sc.db, sc.cfg) |
|
|
|
|
// Create two orgs, to update another one than the logged in one
|
|
|
|
|
setupOrgsDBForAccessControlTests(t, sc.db, sc, 2) |
|
|
|
|
|
|
|
|
@ -444,7 +448,7 @@ func TestAPIEndpoint_PutOrg_LegacyAccessControl(t *testing.T) { |
|
|
|
|
func TestAPIEndpoint_PutOrg_AccessControl(t *testing.T) { |
|
|
|
|
sc := setupHTTPServer(t, true) |
|
|
|
|
setInitCtxSignedInViewer(sc.initCtx) |
|
|
|
|
|
|
|
|
|
sc.hs.orgService = orgimpl.ProvideService(sc.db, sc.cfg) |
|
|
|
|
// Create two orgs, to update another one than the logged in one
|
|
|
|
|
setupOrgsDBForAccessControlTests(t, sc.db, sc, 2) |
|
|
|
|
|
|
|
|
|