package testutil import ( "database/sql" "os" "testing" _ "github.com/go-sql-driver/mysql" ) // OpenTestDB opens the isolated MySQL database configured for integration tests. func OpenTestDB(t *testing.T) *sql.DB { t.Helper() dsn := os.Getenv("TEST_DB_DSN") if dsn == "" { t.Skip("TEST_DB_DSN is not configured") } db, err := sql.Open("mysql", dsn) if err != nil { t.Fatalf("open test database: %v", err) } if err := db.Ping(); err != nil { db.Close() t.Fatalf("connect test database: %v", err) } t.Cleanup(func() { db.Close() }) return db }