mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
chore: remove sqlstore & mockstore dependencies from (most) packages (#57087)
* chore: add alias for InitTestDB and Session Adds an alias for the sqlstore InitTestDB and Session, and updates tests using these to reduce dependencies on the sqlstore.Store. * next pass of removing sqlstore imports * last little bit * remove mockstore where possible
This commit is contained in:
@@ -5,10 +5,10 @@ import (
|
||||
"fmt"
|
||||
"time"
|
||||
|
||||
"github.com/grafana/grafana/pkg/infra/db"
|
||||
"github.com/grafana/grafana/pkg/infra/localcache"
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/services/datasources"
|
||||
"github.com/grafana/grafana/pkg/services/sqlstore"
|
||||
"github.com/grafana/grafana/pkg/services/user"
|
||||
)
|
||||
|
||||
@@ -16,7 +16,7 @@ const (
|
||||
DefaultCacheTTL = 5 * time.Second
|
||||
)
|
||||
|
||||
func ProvideCacheService(cacheService *localcache.CacheService, sqlStore *sqlstore.SQLStore) *CacheServiceImpl {
|
||||
func ProvideCacheService(cacheService *localcache.CacheService, sqlStore db.DB) *CacheServiceImpl {
|
||||
return &CacheServiceImpl{
|
||||
logger: log.New("datasources"),
|
||||
cacheTTL: DefaultCacheTTL,
|
||||
@@ -29,7 +29,7 @@ type CacheServiceImpl struct {
|
||||
logger log.Logger
|
||||
cacheTTL time.Duration
|
||||
CacheService *localcache.CacheService
|
||||
SQLStore *sqlstore.SQLStore
|
||||
SQLStore db.DB
|
||||
}
|
||||
|
||||
func (dc *CacheServiceImpl) GetDatasource(
|
||||
|
||||
@@ -14,6 +14,7 @@ import (
|
||||
sdkhttpclient "github.com/grafana/grafana-plugin-sdk-go/backend/httpclient"
|
||||
|
||||
"github.com/grafana/grafana/pkg/components/simplejson"
|
||||
"github.com/grafana/grafana/pkg/infra/db"
|
||||
"github.com/grafana/grafana/pkg/infra/httpclient"
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/services/accesscontrol"
|
||||
@@ -21,7 +22,6 @@ import (
|
||||
"github.com/grafana/grafana/pkg/services/featuremgmt"
|
||||
"github.com/grafana/grafana/pkg/services/secrets"
|
||||
"github.com/grafana/grafana/pkg/services/secrets/kvstore"
|
||||
"github.com/grafana/grafana/pkg/services/sqlstore/db"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
)
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@ import (
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"github.com/grafana/grafana/pkg/components/simplejson"
|
||||
"github.com/grafana/grafana/pkg/infra/db"
|
||||
"github.com/grafana/grafana/pkg/infra/httpclient"
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/services/accesscontrol"
|
||||
@@ -24,7 +25,6 @@ import (
|
||||
"github.com/grafana/grafana/pkg/services/secrets/fakes"
|
||||
secretskvs "github.com/grafana/grafana/pkg/services/secrets/kvstore"
|
||||
secretsmng "github.com/grafana/grafana/pkg/services/secrets/manager"
|
||||
"github.com/grafana/grafana/pkg/services/sqlstore"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
)
|
||||
|
||||
@@ -197,7 +197,7 @@ func TestService_GetHttpTransport(t *testing.T) {
|
||||
Type: "Kubernetes",
|
||||
}
|
||||
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
sqlStore := db.InitTestDB(t)
|
||||
secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger"))
|
||||
dsService := ProvideService(sqlStore, secretsService, secretsStore, cfg, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService())
|
||||
@@ -232,7 +232,7 @@ func TestService_GetHttpTransport(t *testing.T) {
|
||||
sjson := simplejson.New()
|
||||
sjson.Set("tlsAuthWithCACert", true)
|
||||
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
sqlStore := db.InitTestDB(t)
|
||||
secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger"))
|
||||
dsService := ProvideService(sqlStore, secretsService, secretsStore, cfg, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService())
|
||||
@@ -281,7 +281,7 @@ func TestService_GetHttpTransport(t *testing.T) {
|
||||
sjson := simplejson.New()
|
||||
sjson.Set("tlsAuth", true)
|
||||
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
sqlStore := db.InitTestDB(t)
|
||||
secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger"))
|
||||
dsService := ProvideService(sqlStore, secretsService, secretsStore, cfg, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService())
|
||||
@@ -327,7 +327,7 @@ func TestService_GetHttpTransport(t *testing.T) {
|
||||
sjson.Set("tlsAuthWithCACert", true)
|
||||
sjson.Set("serverName", "server-name")
|
||||
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
sqlStore := db.InitTestDB(t)
|
||||
secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger"))
|
||||
dsService := ProvideService(sqlStore, secretsService, secretsStore, cfg, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService())
|
||||
@@ -370,7 +370,7 @@ func TestService_GetHttpTransport(t *testing.T) {
|
||||
sjson := simplejson.New()
|
||||
sjson.Set("tlsSkipVerify", true)
|
||||
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
sqlStore := db.InitTestDB(t)
|
||||
secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger"))
|
||||
dsService := ProvideService(sqlStore, secretsService, secretsStore, cfg, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService())
|
||||
@@ -403,7 +403,7 @@ func TestService_GetHttpTransport(t *testing.T) {
|
||||
"httpHeaderName1": "Authorization",
|
||||
})
|
||||
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
sqlStore := db.InitTestDB(t)
|
||||
secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger"))
|
||||
dsService := ProvideService(sqlStore, secretsService, secretsStore, cfg, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService())
|
||||
@@ -470,7 +470,7 @@ func TestService_GetHttpTransport(t *testing.T) {
|
||||
"timeout": 19,
|
||||
})
|
||||
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
sqlStore := db.InitTestDB(t)
|
||||
secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger"))
|
||||
dsService := ProvideService(sqlStore, secretsService, secretsStore, cfg, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService())
|
||||
@@ -504,7 +504,7 @@ func TestService_GetHttpTransport(t *testing.T) {
|
||||
sjson, err := simplejson.NewJson([]byte(`{ "sigV4Auth": true }`))
|
||||
require.NoError(t, err)
|
||||
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
sqlStore := db.InitTestDB(t)
|
||||
secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger"))
|
||||
dsService := ProvideService(sqlStore, secretsService, secretsStore, cfg, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService())
|
||||
@@ -541,7 +541,7 @@ func TestService_getTimeout(t *testing.T) {
|
||||
{jsonData: simplejson.NewFromAny(map[string]interface{}{"timeout": "2"}), expectedTimeout: 2 * time.Second},
|
||||
}
|
||||
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
sqlStore := db.InitTestDB(t)
|
||||
secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger"))
|
||||
dsService := ProvideService(sqlStore, secretsService, secretsStore, cfg, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService())
|
||||
@@ -562,7 +562,7 @@ func TestService_GetDecryptedValues(t *testing.T) {
|
||||
Type: "prometheus",
|
||||
}
|
||||
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
sqlStore := db.InitTestDB(t)
|
||||
secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger"))
|
||||
dsService := ProvideService(sqlStore, secretsService, secretsStore, nil, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService())
|
||||
@@ -588,7 +588,7 @@ func TestService_GetDecryptedValues(t *testing.T) {
|
||||
Type: "prometheus",
|
||||
}
|
||||
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
sqlStore := db.InitTestDB(t)
|
||||
secretsService := secretsmng.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
secretsStore := secretskvs.NewSQLSecretsKVStore(sqlStore, secretsService, log.New("test.logger"))
|
||||
dsService := ProvideService(sqlStore, secretsService, secretsStore, nil, featuremgmt.WithFeatures(), acmock.New(), acmock.NewMockedPermissionsService())
|
||||
|
||||
@@ -7,16 +7,16 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"xorm.io/xorm"
|
||||
|
||||
"github.com/grafana/grafana/pkg/components/simplejson"
|
||||
"github.com/grafana/grafana/pkg/events"
|
||||
"github.com/grafana/grafana/pkg/infra/db"
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/infra/metrics"
|
||||
ac "github.com/grafana/grafana/pkg/services/accesscontrol"
|
||||
"github.com/grafana/grafana/pkg/services/datasources"
|
||||
"github.com/grafana/grafana/pkg/services/sqlstore"
|
||||
"github.com/grafana/grafana/pkg/services/sqlstore/db"
|
||||
"github.com/grafana/grafana/pkg/util"
|
||||
"xorm.io/xorm"
|
||||
)
|
||||
|
||||
// Store is the interface for the datasource Service's storage.
|
||||
@@ -45,12 +45,12 @@ func CreateStore(db db.DB, logger log.Logger) *SqlStore {
|
||||
func (ss *SqlStore) GetDataSource(ctx context.Context, query *datasources.GetDataSourceQuery) error {
|
||||
metrics.MDBDataSourceQueryByID.Inc()
|
||||
|
||||
return ss.db.WithDbSession(ctx, func(sess *sqlstore.DBSession) error {
|
||||
return ss.db.WithDbSession(ctx, func(sess *db.Session) error {
|
||||
return ss.getDataSource(ctx, query, sess)
|
||||
})
|
||||
}
|
||||
|
||||
func (ss *SqlStore) getDataSource(ctx context.Context, query *datasources.GetDataSourceQuery, sess *sqlstore.DBSession) error {
|
||||
func (ss *SqlStore) getDataSource(ctx context.Context, query *datasources.GetDataSourceQuery, sess *db.Session) error {
|
||||
if query.OrgId == 0 || (query.Id == 0 && len(query.Name) == 0 && len(query.Uid) == 0) {
|
||||
return datasources.ErrDataSourceIdentifierNotSet
|
||||
}
|
||||
@@ -72,7 +72,7 @@ func (ss *SqlStore) getDataSource(ctx context.Context, query *datasources.GetDat
|
||||
|
||||
func (ss *SqlStore) GetDataSources(ctx context.Context, query *datasources.GetDataSourcesQuery) error {
|
||||
var sess *xorm.Session
|
||||
return ss.db.WithDbSession(ctx, func(dbSess *sqlstore.DBSession) error {
|
||||
return ss.db.WithDbSession(ctx, func(dbSess *db.Session) error {
|
||||
if query.DataSourceLimit <= 0 {
|
||||
sess = dbSess.Where("org_id=?", query.OrgId).Asc("name")
|
||||
} else {
|
||||
@@ -85,7 +85,7 @@ func (ss *SqlStore) GetDataSources(ctx context.Context, query *datasources.GetDa
|
||||
}
|
||||
|
||||
func (ss *SqlStore) GetAllDataSources(ctx context.Context, query *datasources.GetAllDataSourcesQuery) error {
|
||||
return ss.db.WithDbSession(ctx, func(sess *sqlstore.DBSession) error {
|
||||
return ss.db.WithDbSession(ctx, func(sess *db.Session) error {
|
||||
query.Result = make([]*datasources.DataSource, 0)
|
||||
return sess.Asc("name").Find(&query.Result)
|
||||
})
|
||||
@@ -98,7 +98,7 @@ func (ss *SqlStore) GetDataSourcesByType(ctx context.Context, query *datasources
|
||||
}
|
||||
|
||||
query.Result = make([]*datasources.DataSource, 0)
|
||||
return ss.db.WithDbSession(ctx, func(sess *sqlstore.DBSession) error {
|
||||
return ss.db.WithDbSession(ctx, func(sess *db.Session) error {
|
||||
if query.OrgId > 0 {
|
||||
return sess.Where("type=? AND org_id=?", query.Type, query.OrgId).Asc("id").Find(&query.Result)
|
||||
}
|
||||
@@ -109,7 +109,7 @@ func (ss *SqlStore) GetDataSourcesByType(ctx context.Context, query *datasources
|
||||
// GetDefaultDataSource is used to get the default datasource of organization
|
||||
func (ss *SqlStore) GetDefaultDataSource(ctx context.Context, query *datasources.GetDefaultDataSourceQuery) error {
|
||||
datasource := datasources.DataSource{}
|
||||
return ss.db.WithDbSession(ctx, func(sess *sqlstore.DBSession) error {
|
||||
return ss.db.WithDbSession(ctx, func(sess *db.Session) error {
|
||||
exists, err := sess.Where("org_id=? AND is_default=?", query.OrgId, true).Get(&datasource)
|
||||
|
||||
if !exists {
|
||||
@@ -124,7 +124,7 @@ func (ss *SqlStore) GetDefaultDataSource(ctx context.Context, query *datasources
|
||||
// DeleteDataSource removes a datasource by org_id as well as either uid (preferred), id, or name
|
||||
// and is added to the bus. It also removes permissions related to the datasource.
|
||||
func (ss *SqlStore) DeleteDataSource(ctx context.Context, cmd *datasources.DeleteDataSourceCommand) error {
|
||||
return ss.db.WithTransactionalDbSession(ctx, func(sess *sqlstore.DBSession) error {
|
||||
return ss.db.WithTransactionalDbSession(ctx, func(sess *db.Session) error {
|
||||
dsQuery := &datasources.GetDataSourceQuery{Id: cmd.ID, Uid: cmd.UID, Name: cmd.Name, OrgId: cmd.OrgID}
|
||||
errGettingDS := ss.getDataSource(ctx, dsQuery, sess)
|
||||
|
||||
@@ -172,7 +172,7 @@ func (ss *SqlStore) DeleteDataSource(ctx context.Context, cmd *datasources.Delet
|
||||
}
|
||||
|
||||
func (ss *SqlStore) AddDataSource(ctx context.Context, cmd *datasources.AddDataSourceCommand) error {
|
||||
return ss.db.WithTransactionalDbSession(ctx, func(sess *sqlstore.DBSession) error {
|
||||
return ss.db.WithTransactionalDbSession(ctx, func(sess *db.Session) error {
|
||||
existing := datasources.DataSource{OrgId: cmd.OrgId, Name: cmd.Name}
|
||||
has, _ := sess.Get(&existing)
|
||||
|
||||
@@ -243,7 +243,7 @@ func (ss *SqlStore) AddDataSource(ctx context.Context, cmd *datasources.AddDataS
|
||||
})
|
||||
}
|
||||
|
||||
func updateIsDefaultFlag(ds *datasources.DataSource, sess *sqlstore.DBSession) error {
|
||||
func updateIsDefaultFlag(ds *datasources.DataSource, sess *db.Session) error {
|
||||
// Handle is default flag
|
||||
if ds.IsDefault {
|
||||
rawSQL := "UPDATE data_source SET is_default=? WHERE org_id=? AND id <> ?"
|
||||
@@ -255,7 +255,7 @@ func updateIsDefaultFlag(ds *datasources.DataSource, sess *sqlstore.DBSession) e
|
||||
}
|
||||
|
||||
func (ss *SqlStore) UpdateDataSource(ctx context.Context, cmd *datasources.UpdateDataSourceCommand) error {
|
||||
return ss.db.WithTransactionalDbSession(ctx, func(sess *sqlstore.DBSession) error {
|
||||
return ss.db.WithTransactionalDbSession(ctx, func(sess *db.Session) error {
|
||||
if cmd.JsonData == nil {
|
||||
cmd.JsonData = simplejson.New()
|
||||
}
|
||||
@@ -327,7 +327,7 @@ func (ss *SqlStore) UpdateDataSource(ctx context.Context, cmd *datasources.Updat
|
||||
})
|
||||
}
|
||||
|
||||
func generateNewDatasourceUid(sess *sqlstore.DBSession, orgId int64) (string, error) {
|
||||
func generateNewDatasourceUid(sess *db.Session, orgId int64) (string, error) {
|
||||
for i := 0; i < 3; i++ {
|
||||
uid := generateNewUid()
|
||||
|
||||
|
||||
@@ -11,9 +11,9 @@ import (
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"github.com/grafana/grafana/pkg/events"
|
||||
"github.com/grafana/grafana/pkg/infra/db"
|
||||
ac "github.com/grafana/grafana/pkg/services/accesscontrol"
|
||||
"github.com/grafana/grafana/pkg/services/datasources"
|
||||
"github.com/grafana/grafana/pkg/services/sqlstore"
|
||||
)
|
||||
|
||||
func TestIntegrationDataAccess(t *testing.T) {
|
||||
@@ -36,7 +36,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
Url: "http://test",
|
||||
}
|
||||
|
||||
initDatasource := func(db *sqlstore.SQLStore) *datasources.DataSource {
|
||||
initDatasource := func(db db.DB) *datasources.DataSource {
|
||||
cmd := defaultAddDatasourceCommand
|
||||
ss := SqlStore{db: db}
|
||||
err := ss.AddDataSource(context.Background(), &cmd)
|
||||
@@ -52,7 +52,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
|
||||
t.Run("AddDataSource", func(t *testing.T) {
|
||||
t.Run("Can add datasource", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ss := SqlStore{db: db}
|
||||
err := ss.AddDataSource(context.Background(), &datasources.AddDataSourceCommand{
|
||||
OrgId: 10,
|
||||
@@ -78,13 +78,13 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("generates uid if not specified", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ds := initDatasource(db)
|
||||
require.NotEmpty(t, ds.Uid)
|
||||
})
|
||||
|
||||
t.Run("fails to insert ds with same uid", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ss := SqlStore{db: db}
|
||||
cmd1 := defaultAddDatasourceCommand
|
||||
cmd2 := defaultAddDatasourceCommand
|
||||
@@ -98,7 +98,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("fires an event when the datasource is added", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
sqlStore := SqlStore{db: db}
|
||||
var created *events.DataSourceCreated
|
||||
db.Bus().AddEventListener(func(ctx context.Context, e *events.DataSourceCreated) error {
|
||||
@@ -127,7 +127,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
|
||||
t.Run("UpdateDataSource", func(t *testing.T) {
|
||||
t.Run("updates datasource with version", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ds := initDatasource(db)
|
||||
cmd := defaultUpdateDatasourceCommand
|
||||
cmd.Id = ds.Id
|
||||
@@ -138,7 +138,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("does not overwrite Uid if not specified", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ds := initDatasource(db)
|
||||
ss := SqlStore{db: db}
|
||||
require.NotEmpty(t, ds.Uid)
|
||||
@@ -155,7 +155,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("prevents update if version changed", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ds := initDatasource(db)
|
||||
ss := SqlStore{db: db}
|
||||
|
||||
@@ -179,7 +179,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("updates ds without version specified", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ds := initDatasource(db)
|
||||
ss := SqlStore{db: db}
|
||||
|
||||
@@ -197,7 +197,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("updates ds without higher version", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ds := initDatasource(db)
|
||||
ss := SqlStore{db: db}
|
||||
|
||||
@@ -218,7 +218,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
|
||||
t.Run("DeleteDataSourceById", func(t *testing.T) {
|
||||
t.Run("can delete datasource", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ds := initDatasource(db)
|
||||
ss := SqlStore{db: db}
|
||||
|
||||
@@ -233,7 +233,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("Can not delete datasource with wrong orgId", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ds := initDatasource(db)
|
||||
ss := SqlStore{db: db}
|
||||
|
||||
@@ -250,7 +250,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("fires an event when the datasource is deleted", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ds := initDatasource(db)
|
||||
ss := SqlStore{db: db}
|
||||
|
||||
@@ -275,7 +275,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("does not fire an event when the datasource is not deleted", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ss := SqlStore{db: db}
|
||||
|
||||
var called bool
|
||||
@@ -294,7 +294,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("DeleteDataSourceByName", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ds := initDatasource(db)
|
||||
ss := SqlStore{db: db}
|
||||
query := datasources.GetDataSourcesQuery{OrgId: 10}
|
||||
@@ -309,12 +309,12 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("DeleteDataSourceAccessControlPermissions", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
ds := initDatasource(db)
|
||||
ss := SqlStore{db: db}
|
||||
store := db.InitTestDB(t)
|
||||
ds := initDatasource(store)
|
||||
ss := SqlStore{db: store}
|
||||
|
||||
// Init associated permission
|
||||
errAddPermissions := db.WithTransactionalDbSession(context.TODO(), func(sess *sqlstore.DBSession) error {
|
||||
errAddPermissions := store.WithTransactionalDbSession(context.TODO(), func(sess *db.Session) error {
|
||||
_, err := sess.Table("permission").Insert(ac.Permission{
|
||||
RoleID: 1,
|
||||
Action: "datasources:read",
|
||||
@@ -334,7 +334,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
|
||||
// Check associated permission
|
||||
permCount := int64(0)
|
||||
errGetPermissions := db.WithTransactionalDbSession(context.TODO(), func(sess *sqlstore.DBSession) error {
|
||||
errGetPermissions := store.WithTransactionalDbSession(context.TODO(), func(sess *db.Session) error {
|
||||
var err error
|
||||
permCount, err = sess.Table("permission").Count()
|
||||
return err
|
||||
@@ -347,7 +347,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
|
||||
t.Run("GetDataSources", func(t *testing.T) {
|
||||
t.Run("Number of data sources returned limited to 6 per organization", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ss := SqlStore{db: db}
|
||||
datasourceLimit := 6
|
||||
for i := 0; i < datasourceLimit+1; i++ {
|
||||
@@ -371,7 +371,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("No limit should be applied on the returned data sources if the limit is not set", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ss := SqlStore{db: db}
|
||||
numberOfDatasource := 5100
|
||||
for i := 0; i < numberOfDatasource; i++ {
|
||||
@@ -395,7 +395,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("No limit should be applied on the returned data sources if the limit is negative", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ss := SqlStore{db: db}
|
||||
numberOfDatasource := 5100
|
||||
for i := 0; i < numberOfDatasource; i++ {
|
||||
@@ -421,7 +421,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
|
||||
t.Run("GetDataSourcesByType", func(t *testing.T) {
|
||||
t.Run("Only returns datasources of specified type", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ss := SqlStore{db: db}
|
||||
|
||||
err := ss.AddDataSource(context.Background(), &datasources.AddDataSourceCommand{
|
||||
@@ -455,7 +455,7 @@ func TestIntegrationDataAccess(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("Returns an error if no type specified", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ss := SqlStore{db: db}
|
||||
|
||||
query := datasources.GetDataSourcesByTypeQuery{}
|
||||
@@ -473,7 +473,7 @@ func TestIntegrationGetDefaultDataSource(t *testing.T) {
|
||||
}
|
||||
|
||||
t.Run("should return error if there is no default datasource", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ss := SqlStore{db: db}
|
||||
|
||||
cmd := datasources.AddDataSourceCommand{
|
||||
@@ -494,7 +494,7 @@ func TestIntegrationGetDefaultDataSource(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("should return default datasource if exists", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ss := SqlStore{db: db}
|
||||
|
||||
cmd := datasources.AddDataSourceCommand{
|
||||
@@ -516,7 +516,7 @@ func TestIntegrationGetDefaultDataSource(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("should not return default datasource of other organisation", func(t *testing.T) {
|
||||
db := sqlstore.InitTestDB(t)
|
||||
db := db.InitTestDB(t)
|
||||
ss := SqlStore{db: db}
|
||||
query := datasources.GetDefaultDataSourceQuery{OrgId: 1}
|
||||
err := ss.GetDefaultDataSource(context.Background(), &query)
|
||||
|
||||
Reference in New Issue
Block a user