File size: 1,117 Bytes
16cdcb7 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | package subscriptiontestutils
import (
"errors"
"testing"
"github.com/openmeterio/openmeter/openmeter/ent/db"
"github.com/openmeterio/openmeter/openmeter/testutils"
"github.com/openmeterio/openmeter/pkg/framework/entutils/entdriver"
"github.com/openmeterio/openmeter/pkg/framework/pgdriver"
)
type DBDeps struct {
DBClient *db.Client
EntDriver *entdriver.EntPostgresDriver
PGDriver *pgdriver.Driver
}
func (d *DBDeps) Cleanup(t *testing.T) {
var errs []error
if err := d.DBClient.Close(); err != nil {
errs = append(errs, err)
}
if err := d.EntDriver.Close(); err != nil {
errs = append(errs, err)
}
if err := d.PGDriver.Close(); err != nil {
errs = append(errs, err)
}
if len(errs) > 0 {
t.Fatalf("failed to cleanup db deps: %v", errors.Join(errs...))
}
}
func SetupDBDeps(t *testing.T) *DBDeps {
t.Helper()
testdb := testutils.InitPostgresDB(t, testutils.PostgresDBStateAtlasMigrated)
dbClient := testdb.EntDriver.Client()
pgDriver := testdb.PGDriver
entDriver := testdb.EntDriver
return &DBDeps{
DBClient: dbClient,
EntDriver: entDriver,
PGDriver: pgDriver,
}
}
|