summaryrefslogtreecommitdiff
path: root/database_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'database_test.go')
-rw-r--r--database_test.go33
1 files changed, 24 insertions, 9 deletions
diff --git a/database_test.go b/database_test.go
index b412af0..901db42 100644
--- a/database_test.go
+++ b/database_test.go
@@ -29,21 +29,21 @@ func TestMigrationContent(t *testing.T) {
if !strings.HasPrefix(migration, expectation) {
t.Fatalf("Expected '%s' at start of '%s'.", expectation, path)
}
-
- n := strings.Count(migration, `user_version`)
- if n != 1 {
- t.Fatalf(
- "'user_version' was mentioned more than once in %s. "+
- "This is likely not intended.",
- path,
- )
- }
}
}
func TestMigrations(t *testing.T) {
db, _ := emptyDB(t)
+ userVersion, err := UserVersion(db)
+ if err != nil {
+ t.Fatalf("Failed to get initial user_version: %v", err)
+ }
+
+ if userVersion != 0 {
+ t.Fatalf("Expected user_version 0 but got %d.", userVersion)
+ }
+
for i := range migrations {
path := migrationPath(i)
t.Logf("Test execution of %s", path)
@@ -52,5 +52,20 @@ func TestMigrations(t *testing.T) {
if err != nil {
t.Fatalf("Failed to execute migration %s: %v", path, err)
}
+
+ userVersion, err = UserVersion(db)
+ if err != nil {
+ t.Fatalf("Failed to get user_version after migration: %v", err)
+ }
+
+ expected := i + 1
+ if userVersion != expected {
+ t.Fatalf(
+ "Expected user_version %d after running %s but got %d.",
+ expected,
+ path,
+ userVersion,
+ )
+ }
}
}