Chore: Update test database initialization (#81673)

* streamline initialization of test databases, support on-disk sqlite test db

* clean up test databases

* introduce testsuite helper

* use testsuite everywhere we use a test db

* update documentation

* improve error handling

* disable entity integration test until we can figure out locking error
This commit is contained in:
Dan Cech
2024-02-09 09:35:39 -05:00
committed by GitHub
parent de4acb27ce
commit 790e1feb93
104 changed files with 801 additions and 189 deletions
@@ -21,8 +21,13 @@ import (
"github.com/grafana/grafana/pkg/services/user"
"github.com/grafana/grafana/pkg/services/user/usertest"
"github.com/grafana/grafana/pkg/setting"
"github.com/grafana/grafana/pkg/tests/testsuite"
)
func TestMain(m *testing.M) {
testsuite.Run(m)
}
func setupTestEnv(t testing.TB) *Service {
t.Helper()
cfg := setting.NewCfg()
@@ -23,8 +23,14 @@ import (
"github.com/grafana/grafana/pkg/services/team/teamimpl"
"github.com/grafana/grafana/pkg/services/user"
"github.com/grafana/grafana/pkg/services/user/userimpl"
"github.com/grafana/grafana/pkg/tests/testsuite"
)
// run tests with cleanup
func TestMain(m *testing.M) {
testsuite.Run(m)
}
type getUserPermissionsTestCase struct {
desc string
anonymousUser bool
@@ -14,6 +14,7 @@ import (
"github.com/grafana/grafana/pkg/services/datasources"
dsService "github.com/grafana/grafana/pkg/services/datasources/service"
"github.com/grafana/grafana/pkg/services/user"
"github.com/grafana/grafana/pkg/tests/testsuite"
)
type filterDatasourcesTestCase struct {
@@ -27,6 +28,10 @@ type filterDatasourcesTestCase struct {
expectErr bool
}
func TestMain(m *testing.M) {
testsuite.Run(m)
}
func TestFilter_Datasources(t *testing.T) {
tests := []filterDatasourcesTestCase{
{
@@ -14,8 +14,13 @@ import (
"github.com/grafana/grafana/pkg/infra/log"
ac "github.com/grafana/grafana/pkg/services/accesscontrol"
"github.com/grafana/grafana/pkg/services/sqlstore"
"github.com/grafana/grafana/pkg/tests/testsuite"
)
func TestMain(m *testing.M) {
testsuite.Run(m)
}
func batchInsertPermissions(cnt int, sqlStore db.DB) error {
now := time.Now()
@@ -21,6 +21,7 @@ import (
"github.com/grafana/grafana/pkg/services/supportbundles/supportbundlestest"
"github.com/grafana/grafana/pkg/services/user"
"github.com/grafana/grafana/pkg/services/user/userimpl"
"github.com/grafana/grafana/pkg/tests/testsuite"
)
type setUserResourcePermissionTest struct {
@@ -34,6 +35,10 @@ type setUserResourcePermissionTest struct {
seeds []SetResourcePermissionCommand
}
func TestMain(m *testing.M) {
testsuite.Run(m)
}
func TestIntegrationStore_SetUserResourcePermission(t *testing.T) {
if testing.Short() {
t.Skip("skipping integration test")