From 98a4911ff7e5613728c44f315307e019b8552d41 Mon Sep 17 00:00:00 2001 From: Adrian Macneil Date: Tue, 1 Dec 2015 00:16:28 -0800 Subject: [PATCH] Use driver to open SQL connection in tests --- commands_test.go | 8 ++++---- driver/driver.go | 10 ++++++++++ 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/commands_test.go b/commands_test.go index 72701ad..4d90ef3 100644 --- a/commands_test.go +++ b/commands_test.go @@ -1,9 +1,9 @@ package main_test import ( - "database/sql" "flag" "github.com/adrianmacneil/dbmate" + "github.com/adrianmacneil/dbmate/driver" "github.com/codegangsta/cli" "github.com/stretchr/testify/require" "io" @@ -92,7 +92,7 @@ func testMigrateCommandURL(t *testing.T, u *url.URL) { require.Nil(t, err) // verify results - db, err := sql.Open(u.Scheme, u.String()) + db, err := driver.Open(u) require.Nil(t, err) defer mustClose(db) @@ -125,7 +125,7 @@ func testUpCommandURL(t *testing.T, u *url.URL) { require.Nil(t, err) // verify results - db, err := sql.Open(u.Scheme, u.String()) + db, err := driver.Open(u) require.Nil(t, err) defer mustClose(db) @@ -158,7 +158,7 @@ func testRollbackCommandURL(t *testing.T, u *url.URL) { require.Nil(t, err) // verify migration - db, err := sql.Open(u.Scheme, u.String()) + db, err := driver.Open(u) require.Nil(t, err) defer mustClose(db) diff --git a/driver/driver.go b/driver/driver.go index f621896..c783f88 100644 --- a/driver/driver.go +++ b/driver/driver.go @@ -29,3 +29,13 @@ func Get(name string) (Driver, error) { return nil, fmt.Errorf("Unknown driver: %s", name) } } + +// Open is a shortcut for driver.Get(u.Scheme).Open(u) +func Open(u *url.URL) (*sql.DB, error) { + drv, err := Get(u.Scheme) + if err != nil { + return nil, err + } + + return drv.Open(u) +}