PublicDashboards: remove function with business logic from database layer and use it at service layer (#57684)
This commit is contained in:
@@ -214,76 +214,6 @@ func TestIntegrationExistsEnabledByDashboardUid(t *testing.T) {
|
||||
})
|
||||
}
|
||||
|
||||
func TestIntegrationFindPublicDashboardAndDashboardByAccessToken(t *testing.T) {
|
||||
var sqlStore db.DB
|
||||
var cfg *setting.Cfg
|
||||
var dashboardStore *dashboardsDB.DashboardStore
|
||||
var publicdashboardStore *PublicDashboardStoreImpl
|
||||
var savedDashboard *models.Dashboard
|
||||
|
||||
setup := func() {
|
||||
sqlStore, cfg = db.InitTestDBwithCfg(t)
|
||||
dashboardStore = dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg))
|
||||
publicdashboardStore = ProvideStore(sqlStore)
|
||||
savedDashboard = insertTestDashboard(t, dashboardStore, "testDashie", 1, 0, true)
|
||||
}
|
||||
|
||||
t.Run("returns PublicDashboard and Dashboard", func(t *testing.T) {
|
||||
setup()
|
||||
cmd := SavePublicDashboardConfigCommand{
|
||||
PublicDashboard: PublicDashboard{
|
||||
IsEnabled: true,
|
||||
AnnotationsEnabled: true,
|
||||
Uid: "abc1234",
|
||||
DashboardUid: savedDashboard.Uid,
|
||||
OrgId: savedDashboard.OrgId,
|
||||
TimeSettings: DefaultTimeSettings,
|
||||
CreatedAt: DefaultTime,
|
||||
CreatedBy: 7,
|
||||
AccessToken: "NOTAREALUUID",
|
||||
},
|
||||
}
|
||||
|
||||
err := publicdashboardStore.Save(context.Background(), cmd)
|
||||
require.NoError(t, err)
|
||||
|
||||
pd, d, err := publicdashboardStore.FindPublicDashboardAndDashboardByAccessToken(context.Background(), "NOTAREALUUID")
|
||||
require.NoError(t, err)
|
||||
|
||||
assert.Equal(t, pd, &cmd.PublicDashboard)
|
||||
assert.Equal(t, d.Uid, cmd.PublicDashboard.DashboardUid)
|
||||
})
|
||||
|
||||
t.Run("returns ErrPublicDashboardNotFound with empty uid", func(t *testing.T) {
|
||||
setup()
|
||||
_, _, err := publicdashboardStore.FindPublicDashboardAndDashboardByAccessToken(context.Background(), "")
|
||||
require.Error(t, ErrPublicDashboardIdentifierNotSet, err)
|
||||
})
|
||||
|
||||
t.Run("returns ErrPublicDashboardNotFound when PublicDashboard not found", func(t *testing.T) {
|
||||
setup()
|
||||
_, _, err := publicdashboardStore.FindPublicDashboardAndDashboardByAccessToken(context.Background(), "zzzzzz")
|
||||
require.Error(t, ErrPublicDashboardNotFound, err)
|
||||
})
|
||||
|
||||
t.Run("returns ErrDashboardNotFound when Dashboard not found", func(t *testing.T) {
|
||||
setup()
|
||||
err := publicdashboardStore.Save(context.Background(), SavePublicDashboardConfigCommand{
|
||||
PublicDashboard: PublicDashboard{
|
||||
IsEnabled: true,
|
||||
Uid: "abc1234",
|
||||
DashboardUid: "nevergonnafindme",
|
||||
OrgId: savedDashboard.OrgId,
|
||||
CreatedAt: DefaultTime,
|
||||
CreatedBy: 7,
|
||||
},
|
||||
})
|
||||
require.NoError(t, err)
|
||||
_, _, err = publicdashboardStore.FindPublicDashboardAndDashboardByAccessToken(context.Background(), "abc1234")
|
||||
require.Error(t, dashboards.ErrDashboardNotFound, err)
|
||||
})
|
||||
}
|
||||
|
||||
func TestIntegrationFindByDashboardUid(t *testing.T) {
|
||||
var sqlStore db.DB
|
||||
var cfg *setting.Cfg
|
||||
|
||||
Reference in New Issue
Block a user