Files
MeBox/internal/service/test_db_test.go
T

27 lines
522 B
Go

package service
import (
"testing"
"github.com/glebarez/sqlite"
"gorm.io/gorm"
"gorm.io/gorm/logger"
)
func newServiceTestDB(t *testing.T, models ...any) *gorm.DB {
t.Helper()
db, err := gorm.Open(sqlite.Open(":memory:"), &gorm.Config{Logger: logger.Default.LogMode(logger.Silent)})
if err != nil {
t.Fatal(err)
}
if sqlDB, err := db.DB(); err == nil {
t.Cleanup(func() { _ = sqlDB.Close() })
}
if len(models) > 0 {
if err := db.AutoMigrate(models...); err != nil {
t.Fatal(err)
}
}
return db
}