|
|
@@ -142,9 +142,9 @@ func TestIntegratedDashboardService(t *testing.T) {
|
|
|
So(err, ShouldNotBeNil)
|
|
|
So(err, ShouldEqual, models.ErrDashboardUpdateAccessDenied)
|
|
|
|
|
|
- So(sc.dashboardGuardianMock.dashId, ShouldEqual, 0)
|
|
|
- So(sc.dashboardGuardianMock.orgId, ShouldEqual, cmd.OrgId)
|
|
|
- So(sc.dashboardGuardianMock.user.UserId, ShouldEqual, cmd.UserId)
|
|
|
+ So(sc.dashboardGuardianMock.DashId, ShouldEqual, 0)
|
|
|
+ So(sc.dashboardGuardianMock.OrgId, ShouldEqual, cmd.OrgId)
|
|
|
+ So(sc.dashboardGuardianMock.User.UserId, ShouldEqual, cmd.UserId)
|
|
|
})
|
|
|
})
|
|
|
|
|
|
@@ -165,9 +165,9 @@ func TestIntegratedDashboardService(t *testing.T) {
|
|
|
So(err, ShouldNotBeNil)
|
|
|
So(err, ShouldEqual, models.ErrDashboardUpdateAccessDenied)
|
|
|
|
|
|
- So(sc.dashboardGuardianMock.dashId, ShouldEqual, otherSavedFolder.Id)
|
|
|
- So(sc.dashboardGuardianMock.orgId, ShouldEqual, cmd.OrgId)
|
|
|
- So(sc.dashboardGuardianMock.user.UserId, ShouldEqual, cmd.UserId)
|
|
|
+ So(sc.dashboardGuardianMock.DashId, ShouldEqual, otherSavedFolder.Id)
|
|
|
+ So(sc.dashboardGuardianMock.OrgId, ShouldEqual, cmd.OrgId)
|
|
|
+ So(sc.dashboardGuardianMock.User.UserId, ShouldEqual, cmd.UserId)
|
|
|
})
|
|
|
})
|
|
|
|
|
|
@@ -189,9 +189,9 @@ func TestIntegratedDashboardService(t *testing.T) {
|
|
|
So(err, ShouldNotBeNil)
|
|
|
So(err, ShouldEqual, models.ErrDashboardUpdateAccessDenied)
|
|
|
|
|
|
- So(sc.dashboardGuardianMock.dashId, ShouldEqual, savedDashInGeneralFolder.Id)
|
|
|
- So(sc.dashboardGuardianMock.orgId, ShouldEqual, cmd.OrgId)
|
|
|
- So(sc.dashboardGuardianMock.user.UserId, ShouldEqual, cmd.UserId)
|
|
|
+ So(sc.dashboardGuardianMock.DashId, ShouldEqual, savedDashInGeneralFolder.Id)
|
|
|
+ So(sc.dashboardGuardianMock.OrgId, ShouldEqual, cmd.OrgId)
|
|
|
+ So(sc.dashboardGuardianMock.User.UserId, ShouldEqual, cmd.UserId)
|
|
|
})
|
|
|
})
|
|
|
|
|
|
@@ -213,9 +213,9 @@ func TestIntegratedDashboardService(t *testing.T) {
|
|
|
So(err, ShouldNotBeNil)
|
|
|
So(err, ShouldEqual, models.ErrDashboardUpdateAccessDenied)
|
|
|
|
|
|
- So(sc.dashboardGuardianMock.dashId, ShouldEqual, savedDashInFolder.Id)
|
|
|
- So(sc.dashboardGuardianMock.orgId, ShouldEqual, cmd.OrgId)
|
|
|
- So(sc.dashboardGuardianMock.user.UserId, ShouldEqual, cmd.UserId)
|
|
|
+ So(sc.dashboardGuardianMock.DashId, ShouldEqual, savedDashInFolder.Id)
|
|
|
+ So(sc.dashboardGuardianMock.OrgId, ShouldEqual, cmd.OrgId)
|
|
|
+ So(sc.dashboardGuardianMock.User.UserId, ShouldEqual, cmd.UserId)
|
|
|
})
|
|
|
})
|
|
|
})
|
|
|
@@ -785,68 +785,16 @@ func TestIntegratedDashboardService(t *testing.T) {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
-func mockDashboardGuardian(mock *mockDashboardGuarder) {
|
|
|
- guardian.New = func(dashId int64, orgId int64, user *models.SignedInUser) guardian.DashboardGuardian {
|
|
|
- mock.orgId = orgId
|
|
|
- mock.dashId = dashId
|
|
|
- mock.user = user
|
|
|
- return mock
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-type mockDashboardGuarder struct {
|
|
|
- dashId int64
|
|
|
- orgId int64
|
|
|
- user *models.SignedInUser
|
|
|
- canSave bool
|
|
|
- canSaveCallCounter int
|
|
|
- canEdit bool
|
|
|
- canView bool
|
|
|
- canAdmin bool
|
|
|
- hasPermission bool
|
|
|
- checkPermissionBeforeRemove bool
|
|
|
- checkPermissionBeforeUpdate bool
|
|
|
-}
|
|
|
-
|
|
|
-func (g *mockDashboardGuarder) CanSave() (bool, error) {
|
|
|
- g.canSaveCallCounter++
|
|
|
- return g.canSave, nil
|
|
|
-}
|
|
|
-
|
|
|
-func (g *mockDashboardGuarder) CanEdit() (bool, error) {
|
|
|
- return g.canEdit, nil
|
|
|
-}
|
|
|
-
|
|
|
-func (g *mockDashboardGuarder) CanView() (bool, error) {
|
|
|
- return g.canView, nil
|
|
|
-}
|
|
|
-
|
|
|
-func (g *mockDashboardGuarder) CanAdmin() (bool, error) {
|
|
|
- return g.canAdmin, nil
|
|
|
-}
|
|
|
-
|
|
|
-func (g *mockDashboardGuarder) HasPermission(permission models.PermissionType) (bool, error) {
|
|
|
- return g.hasPermission, nil
|
|
|
-}
|
|
|
-
|
|
|
-func (g *mockDashboardGuarder) CheckPermissionBeforeUpdate(permission models.PermissionType, updatePermissions []*models.DashboardAcl) (bool, error) {
|
|
|
- return g.checkPermissionBeforeUpdate, nil
|
|
|
-}
|
|
|
-
|
|
|
-func (g *mockDashboardGuarder) GetAcl() ([]*models.DashboardAclInfoDTO, error) {
|
|
|
- return nil, nil
|
|
|
-}
|
|
|
-
|
|
|
type scenarioContext struct {
|
|
|
- dashboardGuardianMock *mockDashboardGuarder
|
|
|
+ dashboardGuardianMock *guardian.FakeDashboardGuardian
|
|
|
}
|
|
|
|
|
|
type scenarioFunc func(c *scenarioContext)
|
|
|
|
|
|
-func dashboardGuardianScenario(desc string, mock *mockDashboardGuarder, fn scenarioFunc) {
|
|
|
+func dashboardGuardianScenario(desc string, mock *guardian.FakeDashboardGuardian, fn scenarioFunc) {
|
|
|
Convey(desc, func() {
|
|
|
origNewDashboardGuardian := guardian.New
|
|
|
- mockDashboardGuardian(mock)
|
|
|
+ guardian.MockDashboardGuardian(mock)
|
|
|
|
|
|
sc := &scenarioContext{
|
|
|
dashboardGuardianMock: mock,
|
|
|
@@ -861,15 +809,15 @@ func dashboardGuardianScenario(desc string, mock *mockDashboardGuarder, fn scena
|
|
|
}
|
|
|
|
|
|
type dashboardPermissionScenarioContext struct {
|
|
|
- dashboardGuardianMock *mockDashboardGuarder
|
|
|
+ dashboardGuardianMock *guardian.FakeDashboardGuardian
|
|
|
}
|
|
|
|
|
|
type dashboardPermissionScenarioFunc func(sc *dashboardPermissionScenarioContext)
|
|
|
|
|
|
-func dashboardPermissionScenario(desc string, mock *mockDashboardGuarder, fn dashboardPermissionScenarioFunc) {
|
|
|
+func dashboardPermissionScenario(desc string, mock *guardian.FakeDashboardGuardian, fn dashboardPermissionScenarioFunc) {
|
|
|
Convey(desc, func() {
|
|
|
origNewDashboardGuardian := guardian.New
|
|
|
- mockDashboardGuardian(mock)
|
|
|
+ guardian.MockDashboardGuardian(mock)
|
|
|
|
|
|
sc := &dashboardPermissionScenarioContext{
|
|
|
dashboardGuardianMock: mock,
|
|
|
@@ -884,8 +832,8 @@ func dashboardPermissionScenario(desc string, mock *mockDashboardGuarder, fn das
|
|
|
}
|
|
|
|
|
|
func permissionScenario(desc string, canSave bool, fn dashboardPermissionScenarioFunc) {
|
|
|
- mock := &mockDashboardGuarder{
|
|
|
- canSave: canSave,
|
|
|
+ mock := &guardian.FakeDashboardGuardian{
|
|
|
+ CanSaveValue: canSave,
|
|
|
}
|
|
|
dashboardPermissionScenario(desc, mock, fn)
|
|
|
}
|
|
|
@@ -902,10 +850,10 @@ func callSaveWithError(cmd models.SaveDashboardCommand) error {
|
|
|
return err
|
|
|
}
|
|
|
|
|
|
-func dashboardServiceScenario(desc string, mock *mockDashboardGuarder, fn scenarioFunc) {
|
|
|
+func dashboardServiceScenario(desc string, mock *guardian.FakeDashboardGuardian, fn scenarioFunc) {
|
|
|
Convey(desc, func() {
|
|
|
origNewDashboardGuardian := guardian.New
|
|
|
- mockDashboardGuardian(mock)
|
|
|
+ guardian.MockDashboardGuardian(mock)
|
|
|
|
|
|
sc := &scenarioContext{
|
|
|
dashboardGuardianMock: mock,
|