Chore: Remove dashboards from models pkg (#61578)
* Copy dashboard models to dashboard pkg * Use some models from current pkg instead of models * Adjust api pkg * Adjust pkg services * Fix lint * Chore: Remove dashboards models * Remove dashboards from models pkg * Fix lint in tests * Fix lint in tests 2 * Fix for import in auth * Remove newline * Revert unused fix
This commit is contained in:
@@ -25,7 +25,7 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
}
|
||||
var sqlStore db.DB
|
||||
var store store
|
||||
var savedFolder *models.Dashboard
|
||||
var savedFolder *dashboards.Dashboard
|
||||
|
||||
setup := func() {
|
||||
sqlStore = db.InitTestDB(t)
|
||||
@@ -35,9 +35,9 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
|
||||
t.Run("Should insert dashboard in default state", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, dash.Version)
|
||||
thumb := getThumbnail(t, store, dash.Uid, dash.OrgId)
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, dash.Version)
|
||||
thumb := getThumbnail(t, store, dash.UID, dash.OrgID)
|
||||
|
||||
require.Positive(t, thumb.Id)
|
||||
require.Equal(t, thumbs.ThumbnailStateDefault, thumb.State)
|
||||
@@ -46,23 +46,23 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
|
||||
t.Run("Should be able to update the thumbnail", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, dash.Version)
|
||||
thumb := getThumbnail(t, store, dash.Uid, dash.OrgId)
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, dash.Version)
|
||||
thumb := getThumbnail(t, store, dash.UID, dash.OrgID)
|
||||
|
||||
insertedThumbnailId := thumb.Id
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, dash.Version+1)
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, dash.Version+1)
|
||||
|
||||
updatedThumb := getThumbnail(t, store, dash.Uid, dash.OrgId)
|
||||
updatedThumb := getThumbnail(t, store, dash.UID, dash.OrgID)
|
||||
require.Equal(t, insertedThumbnailId, updatedThumb.Id)
|
||||
require.Equal(t, dash.Version+1, updatedThumb.DashboardVersion)
|
||||
})
|
||||
|
||||
t.Run("Should return empty array if all dashboards have thumbnails", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, dash.Version)
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, dash.Version)
|
||||
|
||||
cmd := thumbs.FindDashboardsWithStaleThumbnailsCommand{
|
||||
Kind: kind,
|
||||
@@ -75,9 +75,9 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
|
||||
t.Run("Should return dashboards with thumbnails with empty ds_uids array", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, dash.Version)
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, dash.Version)
|
||||
|
||||
cmd := thumbs.FindDashboardsWithStaleThumbnailsCommand{
|
||||
Kind: kind,
|
||||
@@ -87,14 +87,14 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
res, err := store.FindDashboardsWithStaleThumbnails(context.Background(), &cmd)
|
||||
require.NoError(t, err)
|
||||
require.Len(t, res, 1)
|
||||
require.Equal(t, dash.Id, res[0].Id)
|
||||
require.Equal(t, dash.ID, res[0].Id)
|
||||
})
|
||||
|
||||
t.Run("Should return dashboards with thumbnails marked as stale", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, dash.Version)
|
||||
updateThumbnailState(t, store, dash.Uid, dash.OrgId, thumbs.ThumbnailStateStale)
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, dash.Version)
|
||||
updateThumbnailState(t, store, dash.UID, dash.OrgID, thumbs.ThumbnailStateStale)
|
||||
|
||||
cmd := thumbs.FindDashboardsWithStaleThumbnailsCommand{
|
||||
Kind: kind,
|
||||
@@ -103,15 +103,15 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
res, err := store.FindDashboardsWithStaleThumbnails(context.Background(), &cmd)
|
||||
require.NoError(t, err)
|
||||
require.Len(t, res, 1)
|
||||
require.Equal(t, dash.Id, res[0].Id)
|
||||
require.Equal(t, dash.ID, res[0].Id)
|
||||
})
|
||||
|
||||
t.Run("Should not return dashboards with updated thumbnails that had been marked as stale", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, dash.Version)
|
||||
updateThumbnailState(t, store, dash.Uid, dash.OrgId, thumbs.ThumbnailStateStale)
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, dash.Version)
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, dash.Version)
|
||||
updateThumbnailState(t, store, dash.UID, dash.OrgID, thumbs.ThumbnailStateStale)
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, dash.Version)
|
||||
|
||||
cmd := thumbs.FindDashboardsWithStaleThumbnailsCommand{
|
||||
Kind: kind,
|
||||
@@ -124,7 +124,7 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
|
||||
t.Run("Should find dashboards without thumbnails", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
|
||||
cmd := thumbs.FindDashboardsWithStaleThumbnailsCommand{
|
||||
Kind: kind,
|
||||
@@ -133,13 +133,13 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
res, err := store.FindDashboardsWithStaleThumbnails(context.Background(), &cmd)
|
||||
require.NoError(t, err)
|
||||
require.Len(t, res, 1)
|
||||
require.Equal(t, dash.Id, res[0].Id)
|
||||
require.Equal(t, dash.ID, res[0].Id)
|
||||
})
|
||||
|
||||
t.Run("Should find dashboards with outdated thumbnails", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, dash.Version)
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, dash.Version)
|
||||
|
||||
updateTestDashboard(t, sqlStore, dash, map[string]interface{}{
|
||||
"tags": "different-tag",
|
||||
@@ -152,14 +152,14 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
res, err := store.FindDashboardsWithStaleThumbnails(context.Background(), &cmd)
|
||||
require.NoError(t, err)
|
||||
require.Len(t, res, 1)
|
||||
require.Equal(t, dash.Id, res[0].Id)
|
||||
require.Equal(t, dash.ID, res[0].Id)
|
||||
})
|
||||
|
||||
t.Run("Should not return dashboards with locked thumbnails even if they are outdated", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, dash.Version)
|
||||
updateThumbnailState(t, store, dash.Uid, dash.OrgId, thumbs.ThumbnailStateLocked)
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, dash.Version)
|
||||
updateThumbnailState(t, store, dash.UID, dash.OrgID, thumbs.ThumbnailStateLocked)
|
||||
|
||||
updateTestDashboard(t, sqlStore, dash, map[string]interface{}{
|
||||
"tags": "different-tag",
|
||||
@@ -176,8 +176,8 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
|
||||
t.Run("Should not return dashboards with manually uploaded thumbnails by default", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, thumbs.DashboardVersionForManualThumbnailUpload)
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, thumbs.DashboardVersionForManualThumbnailUpload)
|
||||
|
||||
updateTestDashboard(t, sqlStore, dash, map[string]interface{}{
|
||||
"tags": "different-tag",
|
||||
@@ -194,8 +194,8 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
|
||||
t.Run("Should return dashboards with manually uploaded thumbnails if requested", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, thumbs.DashboardVersionForManualThumbnailUpload)
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, thumbs.DashboardVersionForManualThumbnailUpload)
|
||||
|
||||
updateTestDashboard(t, sqlStore, dash, map[string]interface{}{
|
||||
"tags": "different-tag",
|
||||
@@ -209,15 +209,15 @@ func TestIntegrationSqlStorage(t *testing.T) {
|
||||
res, err := store.FindDashboardsWithStaleThumbnails(context.Background(), &cmd)
|
||||
require.NoError(t, err)
|
||||
require.Len(t, res, 1)
|
||||
require.Equal(t, dash.Id, res[0].Id)
|
||||
require.Equal(t, dash.ID, res[0].Id)
|
||||
})
|
||||
|
||||
t.Run("Should count all dashboard thumbnails", func(t *testing.T) {
|
||||
setup()
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.Uid, dash.OrgId, 1)
|
||||
dash2 := insertTestDashboard(t, sqlStore, "test dash 23", 2, savedFolder.Id, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash2.Uid, dash2.OrgId, 1)
|
||||
dash := insertTestDashboard(t, sqlStore, "test dash 23", 1, savedFolder.ID, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash.UID, dash.OrgID, 1)
|
||||
dash2 := insertTestDashboard(t, sqlStore, "test dash 23", 2, savedFolder.ID, false, "prod", "webapp")
|
||||
upsertTestDashboardThumbnail(t, store, dash2.UID, dash2.OrgID, 1)
|
||||
|
||||
updateTestDashboard(t, sqlStore, dash, map[string]interface{}{
|
||||
"tags": "different-tag",
|
||||
@@ -284,23 +284,23 @@ func updateThumbnailState(t *testing.T, store store, dashboardUID string, orgId
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
func updateTestDashboard(t *testing.T, sqlStore db.DB, dashModel *models.Dashboard, data map[string]interface{}) {
|
||||
func updateTestDashboard(t *testing.T, sqlStore db.DB, dashModel *dashboards.Dashboard, data map[string]interface{}) {
|
||||
t.Helper()
|
||||
|
||||
data["id"] = dashModel.Id
|
||||
data["id"] = dashModel.ID
|
||||
|
||||
parentVersion := dashModel.Version
|
||||
|
||||
cmd := models.SaveDashboardCommand{
|
||||
OrgId: dashModel.OrgId,
|
||||
cmd := dashboards.SaveDashboardCommand{
|
||||
OrgID: dashModel.OrgID,
|
||||
Overwrite: true,
|
||||
Dashboard: simplejson.NewFromAny(data),
|
||||
}
|
||||
var dash *models.Dashboard
|
||||
var dash *dashboards.Dashboard
|
||||
err := sqlStore.WithDbSession(context.Background(), func(sess *db.Session) error {
|
||||
var existing models.Dashboard
|
||||
var existing dashboards.Dashboard
|
||||
dash = cmd.GetDashboardModel()
|
||||
dashWithIdExists, err := sess.Where("id=? AND org_id=?", dash.Id, dash.OrgId).Get(&existing)
|
||||
dashWithIdExists, err := sess.Where("id=? AND org_id=?", dash.ID, dash.OrgID).Get(&existing)
|
||||
require.NoError(t, err)
|
||||
require.True(t, dashWithIdExists)
|
||||
|
||||
@@ -312,10 +312,10 @@ func updateTestDashboard(t *testing.T, sqlStore db.DB, dashModel *models.Dashboa
|
||||
dash.SetVersion(dash.Version + 1)
|
||||
dash.Created = time.Now()
|
||||
dash.Updated = time.Now()
|
||||
dash.Id = dashModel.Id
|
||||
dash.Uid = util.GenerateShortUID()
|
||||
dash.ID = dashModel.ID
|
||||
dash.UID = util.GenerateShortUID()
|
||||
|
||||
_, err = sess.MustCols("folder_id").ID(dash.Id).Update(dash)
|
||||
_, err = sess.MustCols("folder_id").ID(dash.ID).Update(dash)
|
||||
return err
|
||||
})
|
||||
|
||||
@@ -323,7 +323,7 @@ func updateTestDashboard(t *testing.T, sqlStore db.DB, dashModel *models.Dashboa
|
||||
|
||||
err = sqlStore.WithDbSession(context.Background(), func(sess *db.Session) error {
|
||||
dashVersion := &dashver.DashboardVersion{
|
||||
DashboardID: dash.Id,
|
||||
DashboardID: dash.ID,
|
||||
ParentVersion: parentVersion,
|
||||
RestoredFrom: cmd.RestoredFrom,
|
||||
Version: dash.Version,
|
||||
@@ -346,11 +346,11 @@ func updateTestDashboard(t *testing.T, sqlStore db.DB, dashModel *models.Dashboa
|
||||
}
|
||||
|
||||
func insertTestDashboard(t *testing.T, sqlStore db.DB, title string, orgId int64,
|
||||
folderId int64, isFolder bool, tags ...interface{}) *models.Dashboard {
|
||||
folderId int64, isFolder bool, tags ...interface{}) *dashboards.Dashboard {
|
||||
t.Helper()
|
||||
cmd := models.SaveDashboardCommand{
|
||||
OrgId: orgId,
|
||||
FolderId: folderId,
|
||||
cmd := dashboards.SaveDashboardCommand{
|
||||
OrgID: orgId,
|
||||
FolderID: folderId,
|
||||
IsFolder: isFolder,
|
||||
Dashboard: simplejson.NewFromAny(map[string]interface{}{
|
||||
"id": nil,
|
||||
@@ -359,25 +359,25 @@ func insertTestDashboard(t *testing.T, sqlStore db.DB, title string, orgId int64
|
||||
}),
|
||||
}
|
||||
|
||||
var dash *models.Dashboard
|
||||
var dash *dashboards.Dashboard
|
||||
err := sqlStore.WithDbSession(context.Background(), func(sess *db.Session) error {
|
||||
dash = cmd.GetDashboardModel()
|
||||
dash.SetVersion(1)
|
||||
dash.Created = time.Now()
|
||||
dash.Updated = time.Now()
|
||||
dash.Uid = util.GenerateShortUID()
|
||||
dash.UID = util.GenerateShortUID()
|
||||
_, err := sess.Insert(dash)
|
||||
return err
|
||||
})
|
||||
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, dash)
|
||||
dash.Data.Set("id", dash.Id)
|
||||
dash.Data.Set("uid", dash.Uid)
|
||||
dash.Data.Set("id", dash.ID)
|
||||
dash.Data.Set("uid", dash.UID)
|
||||
|
||||
err = sqlStore.WithDbSession(context.Background(), func(sess *db.Session) error {
|
||||
dashVersion := &dashver.DashboardVersion{
|
||||
DashboardID: dash.Id,
|
||||
DashboardID: dash.ID,
|
||||
ParentVersion: dash.Version,
|
||||
RestoredFrom: cmd.RestoredFrom,
|
||||
Version: dash.Version,
|
||||
|
||||
Reference in New Issue
Block a user