Chore: Propagate context for search (#41010)

Propagate context for search.Query, FindPersistedDashboardsQuery, 
GetUserStarsQuery. Followup on context.TODO added by #40810.

Ref #36734
pull/41030/head
Marcus Efraimsson 4 years ago committed by GitHub
parent 877c726246
commit 2d2f7afbde
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      pkg/api/alerting.go
  2. 2
      pkg/api/playlist.go
  3. 9
      pkg/api/playlist_play.go
  4. 2
      pkg/api/search.go
  5. 2
      pkg/services/dashboards/folder_service.go
  6. 12
      pkg/services/search/service.go
  7. 8
      pkg/services/search/service_test.go
  8. 14
      pkg/services/sqlstore/dashboard.go
  9. 32
      pkg/services/sqlstore/dashboard_folder_test.go
  10. 18
      pkg/services/sqlstore/dashboard_test.go

@ -89,7 +89,7 @@ func GetAlerts(c *models.ReqContext) response.Response {
Permission: models.PERMISSION_VIEW, Permission: models.PERMISSION_VIEW,
} }
err := bus.Dispatch(&searchQuery) err := bus.DispatchCtx(c.Req.Context(), &searchQuery)
if err != nil { if err != nil {
return response.Error(500, "List alerts failed", err) return response.Error(500, "List alerts failed", err)
} }

@ -117,7 +117,7 @@ func GetPlaylistItems(c *models.ReqContext) response.Response {
func GetPlaylistDashboards(c *models.ReqContext) response.Response { func GetPlaylistDashboards(c *models.ReqContext) response.Response {
playlistID := c.ParamsInt64(":id") playlistID := c.ParamsInt64(":id")
playlists, err := LoadPlaylistDashboards(c.OrgId, c.SignedInUser, playlistID) playlists, err := LoadPlaylistDashboards(c.Req.Context(), c.OrgId, c.SignedInUser, playlistID)
if err != nil { if err != nil {
return response.Error(500, "Could not load dashboards", err) return response.Error(500, "Could not load dashboards", err)
} }

@ -1,6 +1,7 @@
package api package api
import ( import (
"context"
"sort" "sort"
"strconv" "strconv"
@ -35,7 +36,7 @@ func populateDashboardsByID(dashboardByIDs []int64, dashboardIDOrder map[int64]i
return result, nil return result, nil
} }
func populateDashboardsByTag(orgID int64, signedInUser *models.SignedInUser, dashboardByTag []string, dashboardTagOrder map[string]int) dtos.PlaylistDashboardsSlice { func populateDashboardsByTag(ctx context.Context, orgID int64, signedInUser *models.SignedInUser, dashboardByTag []string, dashboardTagOrder map[string]int) dtos.PlaylistDashboardsSlice {
result := make(dtos.PlaylistDashboardsSlice, 0) result := make(dtos.PlaylistDashboardsSlice, 0)
for _, tag := range dashboardByTag { for _, tag := range dashboardByTag {
@ -48,7 +49,7 @@ func populateDashboardsByTag(orgID int64, signedInUser *models.SignedInUser, das
OrgId: orgID, OrgId: orgID,
} }
if err := bus.Dispatch(&searchQuery); err == nil { if err := bus.DispatchCtx(ctx, &searchQuery); err == nil {
for _, item := range searchQuery.Result { for _, item := range searchQuery.Result {
result = append(result, dtos.PlaylistDashboard{ result = append(result, dtos.PlaylistDashboard{
Id: item.ID, Id: item.ID,
@ -65,7 +66,7 @@ func populateDashboardsByTag(orgID int64, signedInUser *models.SignedInUser, das
return result return result
} }
func LoadPlaylistDashboards(orgID int64, signedInUser *models.SignedInUser, playlistID int64) (dtos.PlaylistDashboardsSlice, error) { func LoadPlaylistDashboards(ctx context.Context, orgID int64, signedInUser *models.SignedInUser, playlistID int64) (dtos.PlaylistDashboardsSlice, error) {
playlistItems, _ := LoadPlaylistItems(playlistID) playlistItems, _ := LoadPlaylistItems(playlistID)
dashboardByIDs := make([]int64, 0) dashboardByIDs := make([]int64, 0)
@ -90,7 +91,7 @@ func LoadPlaylistDashboards(orgID int64, signedInUser *models.SignedInUser, play
var k, _ = populateDashboardsByID(dashboardByIDs, dashboardIDOrder) var k, _ = populateDashboardsByID(dashboardByIDs, dashboardIDOrder)
result = append(result, k...) result = append(result, k...)
result = append(result, populateDashboardsByTag(orgID, signedInUser, dashboardByTag, dashboardTagOrder)...) result = append(result, populateDashboardsByTag(ctx, orgID, signedInUser, dashboardByTag, dashboardTagOrder)...)
sort.Sort(result) sort.Sort(result)
return result, nil return result, nil

@ -62,7 +62,7 @@ func Search(c *models.ReqContext) response.Response {
Sort: sort, Sort: sort,
} }
err := bus.Dispatch(&searchQuery) err := bus.DispatchCtx(c.Req.Context(), &searchQuery)
if err != nil { if err != nil {
return response.Error(500, "Search failed", err) return response.Error(500, "Search failed", err)
} }

@ -45,7 +45,7 @@ func (dr *dashboardServiceImpl) GetFolders(ctx context.Context, limit int64, pag
Page: page, Page: page,
} }
if err := bus.Dispatch(&searchQuery); err != nil { if err := bus.DispatchCtx(ctx, &searchQuery); err != nil {
return nil, err return nil, err
} }

@ -19,7 +19,7 @@ func ProvideService(cfg *setting.Cfg, bus bus.Bus) *SearchService {
SortAlphaDesc.Name: SortAlphaDesc, SortAlphaDesc.Name: SortAlphaDesc,
}, },
} }
s.Bus.AddHandler(s.searchHandler) s.Bus.AddHandlerCtx(s.searchHandler)
return s return s
} }
@ -66,7 +66,7 @@ type SearchService struct {
sortOptions map[string]SortOption sortOptions map[string]SortOption
} }
func (s *SearchService) searchHandler(query *Query) error { func (s *SearchService) searchHandler(ctx context.Context, query *Query) error {
dashboardQuery := FindPersistedDashboardsQuery{ dashboardQuery := FindPersistedDashboardsQuery{
Title: query.Title, Title: query.Title,
SignedInUser: query.SignedInUser, SignedInUser: query.SignedInUser,
@ -84,7 +84,7 @@ func (s *SearchService) searchHandler(query *Query) error {
dashboardQuery.Sort = sortOpt dashboardQuery.Sort = sortOpt
} }
if err := bus.DispatchCtx(context.TODO(), &dashboardQuery); err != nil { if err := bus.DispatchCtx(ctx, &dashboardQuery); err != nil {
return err return err
} }
@ -93,7 +93,7 @@ func (s *SearchService) searchHandler(query *Query) error {
hits = sortedHits(hits) hits = sortedHits(hits)
} }
if err := setStarredDashboards(query.SignedInUser.UserId, hits); err != nil { if err := setStarredDashboards(ctx, query.SignedInUser.UserId, hits); err != nil {
return err return err
} }
@ -115,12 +115,12 @@ func sortedHits(unsorted HitList) HitList {
return hits return hits
} }
func setStarredDashboards(userID int64, hits []*Hit) error { func setStarredDashboards(ctx context.Context, userID int64, hits []*Hit) error {
query := models.GetUserStarsQuery{ query := models.GetUserStarsQuery{
UserId: userID, UserId: userID,
} }
if err := bus.DispatchCtx(context.TODO(), &query); err != nil { if err := bus.DispatchCtx(ctx, &query); err != nil {
return err return err
} }

@ -11,7 +11,7 @@ import (
) )
func TestSearch_SortedResults(t *testing.T) { func TestSearch_SortedResults(t *testing.T) {
bus.AddHandler("test", func(query *FindPersistedDashboardsQuery) error { bus.AddHandlerCtx("test", func(_ context.Context, query *FindPersistedDashboardsQuery) error {
query.Result = HitList{ query.Result = HitList{
&Hit{ID: 16, Title: "CCAA", Type: "dash-db", Tags: []string{"BB", "AA"}}, &Hit{ID: 16, Title: "CCAA", Type: "dash-db", Tags: []string{"BB", "AA"}},
&Hit{ID: 10, Title: "AABB", Type: "dash-db", Tags: []string{"CC", "AA"}}, &Hit{ID: 10, Title: "AABB", Type: "dash-db", Tags: []string{"CC", "AA"}},
@ -22,12 +22,12 @@ func TestSearch_SortedResults(t *testing.T) {
return nil return nil
}) })
bus.AddHandler("test", func(query *models.GetUserStarsQuery) error { bus.AddHandlerCtx("test", func(_ context.Context, query *models.GetUserStarsQuery) error {
query.Result = map[int64]bool{10: true, 12: true} query.Result = map[int64]bool{10: true, 12: true}
return nil return nil
}) })
bus.AddHandlerCtx("test", func(ctx context.Context, query *models.GetSignedInUserQuery) error { bus.AddHandlerCtx("test", func(_ context.Context, query *models.GetSignedInUserQuery) error {
query.Result = &models.SignedInUser{IsGrafanaAdmin: true} query.Result = &models.SignedInUser{IsGrafanaAdmin: true}
return nil return nil
}) })
@ -41,7 +41,7 @@ func TestSearch_SortedResults(t *testing.T) {
}, },
} }
err := svc.searchHandler(query) err := svc.searchHandler(context.Background(), query)
require.Nil(t, err) require.Nil(t, err)
// Assert results are sorted. // Assert results are sorted.

@ -29,7 +29,6 @@ func init() {
bus.AddHandlerCtx("sql", GetDashboard) bus.AddHandlerCtx("sql", GetDashboard)
bus.AddHandlerCtx("sql", GetDashboards) bus.AddHandlerCtx("sql", GetDashboards)
bus.AddHandlerCtx("sql", DeleteDashboard) bus.AddHandlerCtx("sql", DeleteDashboard)
bus.AddHandlerCtx("sql", SearchDashboards)
bus.AddHandlerCtx("sql", GetDashboardTags) bus.AddHandlerCtx("sql", GetDashboardTags)
bus.AddHandlerCtx("sql", GetDashboardSlugById) bus.AddHandlerCtx("sql", GetDashboardSlugById)
bus.AddHandlerCtx("sql", GetDashboardsByPluginId) bus.AddHandlerCtx("sql", GetDashboardsByPluginId)
@ -43,6 +42,7 @@ func init() {
func (ss *SQLStore) addDashboardQueryAndCommandHandlers() { func (ss *SQLStore) addDashboardQueryAndCommandHandlers() {
bus.AddHandlerCtx("sql", ss.GetDashboardUIDById) bus.AddHandlerCtx("sql", ss.GetDashboardUIDById)
bus.AddHandlerCtx("sql", ss.SearchDashboards)
} }
var generateNewUid func() string = util.GenerateShortUID var generateNewUid func() string = util.GenerateShortUID
@ -267,7 +267,7 @@ type DashboardSearchProjection struct {
SortMeta int64 SortMeta int64
} }
func findDashboards(query *search.FindPersistedDashboardsQuery) ([]DashboardSearchProjection, error) { func (ss *SQLStore) findDashboards(ctx context.Context, query *search.FindPersistedDashboardsQuery) ([]DashboardSearchProjection, error) {
filters := []interface{}{ filters := []interface{}{
permissions.DashboardPermissionFilter{ permissions.DashboardPermissionFilter{
OrgRole: query.SignedInUser.OrgRole, OrgRole: query.SignedInUser.OrgRole,
@ -326,7 +326,11 @@ func findDashboards(query *search.FindPersistedDashboardsQuery) ([]DashboardSear
} }
sql, params := sb.ToSQL(limit, page) sql, params := sb.ToSQL(limit, page)
err := x.SQL(sql, params...).Find(&res)
err := ss.WithDbSession(ctx, func(dbSession *DBSession) error {
return dbSession.SQL(sql, params...).Find(&res)
})
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -334,8 +338,8 @@ func findDashboards(query *search.FindPersistedDashboardsQuery) ([]DashboardSear
return res, nil return res, nil
} }
func SearchDashboards(ctx context.Context, query *search.FindPersistedDashboardsQuery) error { func (ss *SQLStore) SearchDashboards(ctx context.Context, query *search.FindPersistedDashboardsQuery) error {
res, err := findDashboards(query) res, err := ss.findDashboards(ctx, query)
if err != nil { if err != nil {
return err return err
} }

@ -38,7 +38,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
OrgId: 1, OrgId: 1,
DashboardIds: []int64{folder.Id, dashInRoot.Id}, DashboardIds: []int64{folder.Id, dashInRoot.Id},
} }
err := SearchDashboards(context.Background(), query) err := sqlStore.SearchDashboards(context.Background(), query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 2) require.Equal(t, len(query.Result), 2)
require.Equal(t, query.Result[0].ID, folder.Id) require.Equal(t, query.Result[0].ID, folder.Id)
@ -61,7 +61,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
SignedInUser: &models.SignedInUser{UserId: currentUser.Id, OrgId: 1, OrgRole: models.ROLE_VIEWER}, SignedInUser: &models.SignedInUser{UserId: currentUser.Id, OrgId: 1, OrgRole: models.ROLE_VIEWER},
OrgId: 1, DashboardIds: []int64{folder.Id, dashInRoot.Id}, OrgId: 1, DashboardIds: []int64{folder.Id, dashInRoot.Id},
} }
err := SearchDashboards(context.Background(), query) err := sqlStore.SearchDashboards(context.Background(), query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 1) require.Equal(t, len(query.Result), 1)
@ -80,7 +80,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
OrgId: 1, OrgId: 1,
DashboardIds: []int64{folder.Id, dashInRoot.Id}, DashboardIds: []int64{folder.Id, dashInRoot.Id},
} }
err := SearchDashboards(context.Background(), query) err := sqlStore.SearchDashboards(context.Background(), query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 2) require.Equal(t, len(query.Result), 2)
require.Equal(t, query.Result[0].ID, folder.Id) require.Equal(t, query.Result[0].ID, folder.Id)
@ -99,7 +99,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
OrgId: 1, OrgId: 1,
DashboardIds: []int64{folder.Id, dashInRoot.Id}, DashboardIds: []int64{folder.Id, dashInRoot.Id},
} }
err := SearchDashboards(context.Background(), query) err := sqlStore.SearchDashboards(context.Background(), query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 2) require.Equal(t, len(query.Result), 2)
require.Equal(t, query.Result[0].ID, folder.Id) require.Equal(t, query.Result[0].ID, folder.Id)
@ -121,7 +121,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
query := &search.FindPersistedDashboardsQuery{ query := &search.FindPersistedDashboardsQuery{
SignedInUser: &models.SignedInUser{UserId: currentUser.Id, OrgId: 1, OrgRole: models.ROLE_VIEWER}, OrgId: 1, DashboardIds: []int64{folder.Id, childDash.Id, dashInRoot.Id}, SignedInUser: &models.SignedInUser{UserId: currentUser.Id, OrgId: 1, OrgRole: models.ROLE_VIEWER}, OrgId: 1, DashboardIds: []int64{folder.Id, childDash.Id, dashInRoot.Id},
} }
err := SearchDashboards(context.Background(), query) err := sqlStore.SearchDashboards(context.Background(), query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 1) require.Equal(t, len(query.Result), 1)
require.Equal(t, query.Result[0].ID, dashInRoot.Id) require.Equal(t, query.Result[0].ID, dashInRoot.Id)
@ -135,7 +135,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
t.Run("should be able to search for child dashboard but not folder", func(t *testing.T) { t.Run("should be able to search for child dashboard but not folder", func(t *testing.T) {
query := &search.FindPersistedDashboardsQuery{SignedInUser: &models.SignedInUser{UserId: currentUser.Id, OrgId: 1, OrgRole: models.ROLE_VIEWER}, OrgId: 1, DashboardIds: []int64{folder.Id, childDash.Id, dashInRoot.Id}} query := &search.FindPersistedDashboardsQuery{SignedInUser: &models.SignedInUser{UserId: currentUser.Id, OrgId: 1, OrgRole: models.ROLE_VIEWER}, OrgId: 1, DashboardIds: []int64{folder.Id, childDash.Id, dashInRoot.Id}}
err := SearchDashboards(context.Background(), query) err := sqlStore.SearchDashboards(context.Background(), query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 2) require.Equal(t, len(query.Result), 2)
require.Equal(t, query.Result[0].ID, childDash.Id) require.Equal(t, query.Result[0].ID, childDash.Id)
@ -154,7 +154,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
OrgId: 1, OrgId: 1,
DashboardIds: []int64{folder.Id, dashInRoot.Id, childDash.Id}, DashboardIds: []int64{folder.Id, dashInRoot.Id, childDash.Id},
} }
err := SearchDashboards(context.Background(), query) err := sqlStore.SearchDashboards(context.Background(), query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 3) require.Equal(t, len(query.Result), 3)
require.Equal(t, query.Result[0].ID, folder.Id) require.Equal(t, query.Result[0].ID, folder.Id)
@ -192,7 +192,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
}, },
OrgId: 1, OrgId: 1,
} }
err := SearchDashboards(context.Background(), query) err := sqlStore.SearchDashboards(context.Background(), query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 4) require.Equal(t, len(query.Result), 4)
require.Equal(t, query.Result[0].ID, folder1.Id) require.Equal(t, query.Result[0].ID, folder1.Id)
@ -218,7 +218,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
OrgId: 1, OrgId: 1,
DashboardIds: []int64{folder1.Id, childDash1.Id, childDash2.Id, dashInRoot.Id}, DashboardIds: []int64{folder1.Id, childDash1.Id, childDash2.Id, dashInRoot.Id},
} }
err := SearchDashboards(context.Background(), query) err := sqlStore.SearchDashboards(context.Background(), query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 1) require.Equal(t, len(query.Result), 1)
require.Equal(t, query.Result[0].ID, dashInRoot.Id) require.Equal(t, query.Result[0].ID, dashInRoot.Id)
@ -234,7 +234,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
OrgId: 1, OrgId: 1,
DashboardIds: []int64{folder2.Id, childDash1.Id, childDash2.Id, dashInRoot.Id}, DashboardIds: []int64{folder2.Id, childDash1.Id, childDash2.Id, dashInRoot.Id},
} }
err := SearchDashboards(context.Background(), query) err := sqlStore.SearchDashboards(context.Background(), query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 4) require.Equal(t, len(query.Result), 4)
require.Equal(t, query.Result[0].ID, folder2.Id) require.Equal(t, query.Result[0].ID, folder2.Id)
@ -258,7 +258,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
OrgId: 1, OrgId: 1,
DashboardIds: []int64{folder2.Id, childDash1.Id, childDash2.Id, dashInRoot.Id}, DashboardIds: []int64{folder2.Id, childDash1.Id, childDash2.Id, dashInRoot.Id},
} }
err = SearchDashboards(context.Background(), query) err = sqlStore.SearchDashboards(context.Background(), query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 4) require.Equal(t, len(query.Result), 4)
require.Equal(t, query.Result[0].ID, folder2.Id) require.Equal(t, query.Result[0].ID, folder2.Id)
@ -296,7 +296,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
Type: "dash-folder", Type: "dash-folder",
} }
err := SearchDashboards(context.Background(), &query) err := sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 2) require.Equal(t, len(query.Result), 2)
@ -349,7 +349,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
} }
t.Run("Should have write access to all dashboard folders with default ACL", func(t *testing.T) { t.Run("Should have write access to all dashboard folders with default ACL", func(t *testing.T) {
err := SearchDashboards(context.Background(), &query) err := sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 2) require.Equal(t, len(query.Result), 2)
@ -381,7 +381,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
}) })
require.NoError(t, err) require.NoError(t, err)
err = SearchDashboards(context.Background(), &query) err = sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 1) require.Equal(t, len(query.Result), 1)
@ -415,7 +415,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
} }
t.Run("Should have no write access to any dashboard folders with default ACL", func(t *testing.T) { t.Run("Should have no write access to any dashboard folders with default ACL", func(t *testing.T) {
err := SearchDashboards(context.Background(), &query) err := sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 0) require.Equal(t, len(query.Result), 0)
@ -447,7 +447,7 @@ func TestDashboardFolderDataAccess(t *testing.T) {
}) })
require.NoError(t, err) require.NoError(t, err)
err = SearchDashboards(context.Background(), &query) err = sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 1) require.Equal(t, len(query.Result), 1)

@ -236,7 +236,7 @@ func TestDashboardDataAccess(t *testing.T) {
SignedInUser: &models.SignedInUser{}, SignedInUser: &models.SignedInUser{},
} }
err = SearchDashboards(context.Background(), &query) err = sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 0) require.Equal(t, len(query.Result), 0)
@ -305,7 +305,7 @@ func TestDashboardDataAccess(t *testing.T) {
SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR}, SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR},
} }
err := SearchDashboards(context.Background(), &query) err := sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 1) require.Equal(t, len(query.Result), 1)
@ -323,7 +323,7 @@ func TestDashboardDataAccess(t *testing.T) {
SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR}, SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR},
} }
err := SearchDashboards(context.Background(), &query) err := sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 1) require.Equal(t, len(query.Result), 1)
@ -339,7 +339,7 @@ func TestDashboardDataAccess(t *testing.T) {
SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR}, SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR},
} }
err := SearchDashboards(context.Background(), &query) err := sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 1) require.Equal(t, len(query.Result), 1)
@ -355,7 +355,7 @@ func TestDashboardDataAccess(t *testing.T) {
SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR}, SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR},
} }
err := SearchDashboards(context.Background(), &query) err := sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 3) require.Equal(t, len(query.Result), 3)
@ -370,7 +370,7 @@ func TestDashboardDataAccess(t *testing.T) {
SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR}, SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR},
} }
err := SearchDashboards(context.Background(), &query) err := sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 2) require.Equal(t, len(query.Result), 2)
@ -390,7 +390,7 @@ func TestDashboardDataAccess(t *testing.T) {
SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR}, SignedInUser: &models.SignedInUser{OrgId: 1, OrgRole: models.ROLE_EDITOR},
} }
err := SearchDashboards(context.Background(), &query) err := sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 2) require.Equal(t, len(query.Result), 2)
@ -421,7 +421,7 @@ func TestDashboardDataAccess(t *testing.T) {
SignedInUser: &models.SignedInUser{UserId: 10, OrgId: 1, OrgRole: models.ROLE_EDITOR}, SignedInUser: &models.SignedInUser{UserId: 10, OrgId: 1, OrgRole: models.ROLE_EDITOR},
IsStarred: true, IsStarred: true,
} }
err = SearchDashboards(context.Background(), &query) err = sqlStore.SearchDashboards(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(query.Result), 1) require.Equal(t, len(query.Result), 1)
@ -463,7 +463,7 @@ func TestDashboard_SortingOptions(t *testing.T) {
searchstore.TitleSorter{Descending: true}, searchstore.TitleSorter{Descending: true},
}, },
} }
dashboards, err := findDashboards(q) dashboards, err := sqlStore.findDashboards(context.Background(), q)
require.NoError(t, err) require.NoError(t, err)
require.Len(t, dashboards, 2) require.Len(t, dashboards, 2)
assert.Equal(t, dashA.Id, dashboards[0].ID) assert.Equal(t, dashA.Id, dashboards[0].ID)

Loading…
Cancel
Save