|
|
|
@ -7,6 +7,9 @@ import ( |
|
|
|
|
"testing" |
|
|
|
|
"time" |
|
|
|
|
|
|
|
|
|
"github.com/stretchr/testify/assert" |
|
|
|
|
"github.com/stretchr/testify/require" |
|
|
|
|
|
|
|
|
|
"github.com/grafana/grafana/pkg/components/simplejson" |
|
|
|
|
"github.com/grafana/grafana/pkg/infra/db" |
|
|
|
|
"github.com/grafana/grafana/pkg/services/accesscontrol" |
|
|
|
@ -22,8 +25,6 @@ import ( |
|
|
|
|
"github.com/grafana/grafana/pkg/services/user" |
|
|
|
|
"github.com/grafana/grafana/pkg/setting" |
|
|
|
|
"github.com/grafana/grafana/pkg/util" |
|
|
|
|
"github.com/stretchr/testify/assert" |
|
|
|
|
"github.com/stretchr/testify/require" |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
// This is what the db sets empty time settings to
|
|
|
|
@ -59,7 +60,7 @@ func TestIntegrationListPublicDashboard(t *testing.T) { |
|
|
|
|
setup := func() { |
|
|
|
|
sqlStore, cfg = db.InitTestDBwithCfg(t, db.InitTestDBOpt{FeatureFlags: []string{featuremgmt.FlagPublicDashboards}}) |
|
|
|
|
quotaService := quotatest.New(false, nil) |
|
|
|
|
dashboardStore, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotaService) |
|
|
|
|
dashboardStore, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotaService) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
publicdashboardStore = ProvideStore(sqlStore, sqlStore.Cfg, featuremgmt.WithFeatures()) |
|
|
|
|
|
|
|
|
@ -174,7 +175,7 @@ func TestIntegrationFindDashboard(t *testing.T) { |
|
|
|
|
setup := func() { |
|
|
|
|
sqlStore, cfg = db.InitTestDBwithCfg(t) |
|
|
|
|
quotaService := quotatest.New(false, nil) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotaService) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotaService) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
dashboardStore = store |
|
|
|
|
publicdashboardStore = ProvideStore(sqlStore, cfg, featuremgmt.WithFeatures()) |
|
|
|
@ -204,7 +205,7 @@ func TestIntegrationExistsEnabledByAccessToken(t *testing.T) { |
|
|
|
|
setup := func() { |
|
|
|
|
sqlStore, cfg = db.InitTestDBwithCfg(t) |
|
|
|
|
quotaService := quotatest.New(false, nil) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotaService) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotaService) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
dashboardStore = store |
|
|
|
|
publicdashboardStore = ProvideStore(sqlStore, cfg, featuremgmt.WithFeatures()) |
|
|
|
@ -277,7 +278,7 @@ func TestIntegrationExistsEnabledByDashboardUid(t *testing.T) { |
|
|
|
|
setup := func() { |
|
|
|
|
sqlStore, cfg = db.InitTestDBwithCfg(t) |
|
|
|
|
quotaService := quotatest.New(false, nil) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotaService) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotaService) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
dashboardStore = store |
|
|
|
|
publicdashboardStore = ProvideStore(sqlStore, cfg, featuremgmt.WithFeatures()) |
|
|
|
@ -342,7 +343,7 @@ func TestIntegrationFindByDashboardUid(t *testing.T) { |
|
|
|
|
setup := func() { |
|
|
|
|
sqlStore, cfg = db.InitTestDBwithCfg(t) |
|
|
|
|
quotaService := quotatest.New(false, nil) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotaService) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotaService) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
dashboardStore = store |
|
|
|
|
publicdashboardStore = ProvideStore(sqlStore, cfg, featuremgmt.WithFeatures()) |
|
|
|
@ -410,7 +411,7 @@ func TestIntegrationFindByAccessToken(t *testing.T) { |
|
|
|
|
|
|
|
|
|
setup := func() { |
|
|
|
|
sqlStore, cfg = db.InitTestDBwithCfg(t) |
|
|
|
|
dashboardStore, err = dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotatest.New(false, nil)) |
|
|
|
|
dashboardStore, err = dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotatest.New(false, nil)) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
publicdashboardStore = ProvideStore(sqlStore, cfg, featuremgmt.WithFeatures()) |
|
|
|
|
savedDashboard = insertTestDashboard(t, dashboardStore, "testDashie", 1, 0, "", true) |
|
|
|
@ -479,7 +480,7 @@ func TestIntegrationCreatePublicDashboard(t *testing.T) { |
|
|
|
|
setup := func() { |
|
|
|
|
sqlStore, cfg = db.InitTestDBwithCfg(t, db.InitTestDBOpt{FeatureFlags: []string{featuremgmt.FlagPublicDashboards}}) |
|
|
|
|
quotaService := quotatest.New(false, nil) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotaService) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotaService) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
dashboardStore = store |
|
|
|
|
publicdashboardStore = ProvideStore(sqlStore, cfg, featuremgmt.WithFeatures()) |
|
|
|
@ -559,7 +560,7 @@ func TestIntegrationUpdatePublicDashboard(t *testing.T) { |
|
|
|
|
setup := func() { |
|
|
|
|
sqlStore, cfg = db.InitTestDBwithCfg(t, db.InitTestDBOpt{FeatureFlags: []string{featuremgmt.FlagPublicDashboards}}) |
|
|
|
|
quotaService := quotatest.New(false, nil) |
|
|
|
|
dashboardStore, err = dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotaService) |
|
|
|
|
dashboardStore, err = dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotaService) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
publicdashboardStore = ProvideStore(sqlStore, cfg, featuremgmt.WithFeatures()) |
|
|
|
|
savedDashboard = insertTestDashboard(t, dashboardStore, "testDashie", 1, 0, "", true) |
|
|
|
@ -663,7 +664,7 @@ func TestIntegrationGetOrgIdByAccessToken(t *testing.T) { |
|
|
|
|
setup := func() { |
|
|
|
|
sqlStore, cfg = db.InitTestDBwithCfg(t) |
|
|
|
|
quotaService := quotatest.New(false, nil) |
|
|
|
|
dashboardStore, err = dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotaService) |
|
|
|
|
dashboardStore, err = dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotaService) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
publicdashboardStore = ProvideStore(sqlStore, cfg, featuremgmt.WithFeatures()) |
|
|
|
|
savedDashboard = insertTestDashboard(t, dashboardStore, "testDashie", 1, 0, "", true) |
|
|
|
@ -735,7 +736,7 @@ func TestIntegrationDelete(t *testing.T) { |
|
|
|
|
|
|
|
|
|
setup := func() { |
|
|
|
|
sqlStore, cfg = db.InitTestDBwithCfg(t) |
|
|
|
|
dashboardStore, err = dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotatest.New(false, nil)) |
|
|
|
|
dashboardStore, err = dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotatest.New(false, nil)) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
publicdashboardStore = ProvideStore(sqlStore, cfg, featuremgmt.WithFeatures()) |
|
|
|
|
savedDashboard = insertTestDashboard(t, dashboardStore, "testDashie", 1, 0, "", true) |
|
|
|
@ -787,7 +788,7 @@ func TestGetDashboardByFolder(t *testing.T) { |
|
|
|
|
t.Run("can get all pubdashes for dashboard folder and org", func(t *testing.T) { |
|
|
|
|
sqlStore, cfg := db.InitTestDBwithCfg(t) |
|
|
|
|
quotaService := quotatest.New(false, nil) |
|
|
|
|
dashboardStore, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotaService) |
|
|
|
|
dashboardStore, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotaService) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
pubdashStore := ProvideStore(sqlStore, cfg, featuremgmt.WithFeatures()) |
|
|
|
|
dashboard := insertTestDashboard(t, dashboardStore, "title", 1, 1, "1", true, PublicShareType) |
|
|
|
@ -819,7 +820,7 @@ func TestGetMetrics(t *testing.T) { |
|
|
|
|
setup := func() { |
|
|
|
|
sqlStore, cfg = db.InitTestDBwithCfg(t, db.InitTestDBOpt{FeatureFlags: []string{featuremgmt.FlagPublicDashboards}}) |
|
|
|
|
quotaService := quotatest.New(false, nil) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore, cfg), quotaService) |
|
|
|
|
store, err := dashboardsDB.ProvideDashboardStore(sqlStore, cfg, featuremgmt.WithFeatures(), tagimpl.ProvideService(sqlStore), quotaService) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
dashboardStore = store |
|
|
|
|
publicdashboardStore = ProvideStore(sqlStore, cfg, featuremgmt.WithFeatures()) |
|
|
|
|