Refactor: reverts SqlStore change and uses RegisterOverride instead

This commit is contained in:
Hugo Häggmark
2020-12-07 08:16:08 +01:00
parent 67d79fb9b2
commit 7d201b75d7
3 changed files with 27 additions and 26 deletions
+24 -6
View File
@@ -2,6 +2,7 @@ package librarypanels
import (
"github.com/grafana/grafana/pkg/models"
"github.com/grafana/grafana/pkg/registry"
"github.com/grafana/grafana/pkg/services/sqlstore"
"github.com/grafana/grafana/pkg/setting"
"github.com/stretchr/testify/require"
@@ -36,9 +37,29 @@ func TestAddLibraryPanel(t *testing.T) {
}
func setupTestEnv(t *testing.T, orgRole models.RoleType) (LibraryPanelService, models.SignedInUser) {
cfg := setting.Cfg{}
cfg := setting.NewCfg()
cfg.FeatureToggles = map[string]bool{"panelLibrary": true}
sqlStore := sqlstore.InitTestDBWithCfg(t, &cfg)
lps := LibraryPanelService{
SQLStore: nil,
Cfg: cfg,
}
overrideServiceFunc := func(d registry.Descriptor) (*registry.Descriptor, bool) {
descriptor := registry.Descriptor{
Name: "LibraryPanelService",
Instance: &lps,
InitPriority: 0,
}
return &descriptor, true
}
registry.RegisterOverride(overrideServiceFunc)
sqlStore := sqlstore.InitTestDB(t)
lps.SQLStore = sqlStore
user := models.SignedInUser{
UserId: 1,
OrgId: 1,
@@ -55,9 +76,6 @@ func setupTestEnv(t *testing.T, orgRole models.RoleType) (LibraryPanelService, m
LastSeenAt: time.Now(),
Teams: nil,
}
lps := LibraryPanelService{
SQLStore: sqlStore,
Cfg: &cfg,
}
return lps, user
}
+2 -4
View File
@@ -25,9 +25,7 @@ func init() {
func (lps *LibraryPanelService) Init() error {
lps.log = log.New("librarypanels")
if lps.IsEnabled() {
lps.registerAPIEndpoints()
}
lps.registerAPIEndpoints()
return nil
}
@@ -35,7 +33,7 @@ func (lps *LibraryPanelService) Init() error {
// IsEnabled returns true if the Panel Library feature is enabled for this instance.
func (lps *LibraryPanelService) IsEnabled() bool {
if lps.Cfg == nil {
return true // used for test purposes only
return false
}
return lps.Cfg.IsPanelLibraryEnabled()
+1 -16
View File
@@ -346,15 +346,6 @@ var testSQLStore *SQLStore
// InitTestDB initializes the test DB.
func InitTestDB(t ITestDB) *SQLStore {
return initTestDB(t, nil)
}
// InitTestDBWithCfg initializes the test DB with Cfg.
func InitTestDBWithCfg(t ITestDB, cfg *setting.Cfg) *SQLStore {
return initTestDB(t, nil)
}
func initTestDB(t ITestDB, cfg *setting.Cfg) *SQLStore {
t.Helper()
if testSQLStore == nil {
testSQLStore = &SQLStore{}
@@ -371,13 +362,7 @@ func initTestDB(t ITestDB, cfg *setting.Cfg) *SQLStore {
}
// set test db config
if cfg == nil {
testSQLStore.Cfg = setting.NewCfg()
}
if cfg != nil {
testSQLStore.Cfg = cfg
}
testSQLStore.Cfg = setting.NewCfg()
sec, err := testSQLStore.Cfg.Raw.NewSection("database")
if err != nil {