Initial phase 1 baseline implementation
This commit is contained in:
parent
099c53badf
commit
077cf7601a
29 changed files with 1339 additions and 39 deletions
41
internal/adapters/postgres/migrate_integration_test.go
Normal file
41
internal/adapters/postgres/migrate_integration_test.go
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
package postgres
|
||||
|
||||
import (
|
||||
"context"
|
||||
"os"
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
|
||||
func TestMigrationsAndStore(t *testing.T) {
|
||||
databaseURL := os.Getenv("DRIVE_TEST_DATABASE_URL")
|
||||
if databaseURL == "" {
|
||||
t.Skip("DRIVE_TEST_DATABASE_URL is not set")
|
||||
}
|
||||
|
||||
if err := Migrate(databaseURL); err != nil {
|
||||
t.Fatalf("first migration run failed: %v", err)
|
||||
}
|
||||
if err := Migrate(databaseURL); err != nil {
|
||||
t.Fatalf("second migration run failed: %v", err)
|
||||
}
|
||||
|
||||
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
|
||||
defer cancel()
|
||||
store, err := Open(ctx, databaseURL)
|
||||
if err != nil {
|
||||
t.Fatalf("Open returned an error: %v", err)
|
||||
}
|
||||
defer store.Close()
|
||||
|
||||
if err := store.DatabaseHealth(ctx); err != nil {
|
||||
t.Fatalf("DatabaseHealth returned an error: %v", err)
|
||||
}
|
||||
initialized, err := store.OwnerExists(ctx)
|
||||
if err != nil {
|
||||
t.Fatalf("OwnerExists returned an error: %v", err)
|
||||
}
|
||||
if initialized {
|
||||
t.Fatal("OwnerExists = true on a fresh database, want false")
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue