diff --git a/src/storage/tests/feed_test.go b/src/storage/tests/feed_test.go index cf6f830..b027546 100644 --- a/src/storage/tests/feed_test.go +++ b/src/storage/tests/feed_test.go @@ -1,4 +1,4 @@ -package sqlite +package tests import ( "reflect" diff --git a/src/storage/tests/feedstate_test.go b/src/storage/tests/feedstate_test.go index 43b0043..d3c3d8c 100644 --- a/src/storage/tests/feedstate_test.go +++ b/src/storage/tests/feedstate_test.go @@ -1,4 +1,4 @@ -package sqlite +package tests import ( "testing" diff --git a/src/storage/tests/folder_test.go b/src/storage/tests/folder_test.go index de84a01..4b406e3 100644 --- a/src/storage/tests/folder_test.go +++ b/src/storage/tests/folder_test.go @@ -1,4 +1,4 @@ -package sqlite +package tests import ( "testing" diff --git a/src/storage/tests/item_test.go b/src/storage/tests/item_test.go index a5fac68..f7ed569 100644 --- a/src/storage/tests/item_test.go +++ b/src/storage/tests/item_test.go @@ -1,4 +1,4 @@ -package sqlite +package tests import ( "database/sql" diff --git a/src/storage/tests/settings_test.go b/src/storage/tests/settings_test.go index aaf5497..57aecb7 100644 --- a/src/storage/tests/settings_test.go +++ b/src/storage/tests/settings_test.go @@ -1,4 +1,4 @@ -package sqlite +package tests import ( "reflect" diff --git a/src/storage/tests/storage_test.go b/src/storage/tests/storage_test.go index 7e996ec..a6a85bb 100644 --- a/src/storage/tests/storage_test.go +++ b/src/storage/tests/storage_test.go @@ -1,28 +1,26 @@ -package sqlite +package tests import ( "io" "log" "os" "testing" + + "github.com/nkanaev/yarr/src/storage" ) -func testDB() *SQLiteStorage { - log.SetOutput(io.Discard) - db, err := New(":memory:") - if err != nil { - panic(err) +func dbtest(t *testing.T, testcase func(t *testing.T, db storage.Storage)) { + testurls := map[string]string { + "sqlite": ":memory:", + "postgres": "postgres://postgres:postgres@localhost:5432/yarr_test", } - log.SetOutput(os.Stderr) - return db -} - -func TestStorage(t *testing.T) { - db, err := New(":memory:") - if err != nil { - t.Fatal(err) - } - if db == nil { - t.Fatal("no db") + for testname, url := range testurls { + db, err := storage.New(url) + if err != nil { + t.Fatalf("failed to init storage for %s: %v", url, err) + } + t.Run(testname, func(t *testing.T) { + testcase(t, db) + }) } }