Add wait command (#35)

This commit is contained in:
Adrian Macneil 2018-04-15 18:37:57 -07:00 committed by GitHub
parent 6ba419a74b
commit cacf5de3ec
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 232 additions and 4 deletions

View file

@ -40,6 +40,7 @@ func prepTestSQLiteDB(t *testing.T) *sql.DB {
func TestSQLiteCreateDropDatabase(t *testing.T) {
drv := SQLiteDriver{}
u := sqliteTestURL(t)
path := sqlitePath(u)
// drop any existing database
err := drv.DropDatabase(u)
@ -50,7 +51,7 @@ func TestSQLiteCreateDropDatabase(t *testing.T) {
require.Nil(t, err)
// check that database exists
_, err = os.Stat(sqlitePath(u))
_, err = os.Stat(path)
require.Nil(t, err)
// drop the database
@ -58,7 +59,7 @@ func TestSQLiteCreateDropDatabase(t *testing.T) {
require.Nil(t, err)
// check that database no longer exists
_, err = os.Stat(sqlitePath(u))
_, err = os.Stat(path)
require.NotNil(t, err)
require.Equal(t, true, os.IsNotExist(err))
}
@ -212,3 +213,37 @@ func TestSQLiteDeleteMigration(t *testing.T) {
require.Nil(t, err)
require.Equal(t, 1, count)
}
func TestSQLitePing(t *testing.T) {
drv := SQLiteDriver{}
u := sqliteTestURL(t)
path := sqlitePath(u)
// drop any existing database
err := drv.DropDatabase(u)
require.Nil(t, err)
// ping database
err = drv.Ping(u)
require.Nil(t, err)
// check that the database was created (sqlite-only behavior)
_, err = os.Stat(path)
require.Nil(t, err)
// drop the database
err = drv.DropDatabase(u)
require.Nil(t, err)
// create directory where database file is expected
err = os.Mkdir(path, 0755)
require.Nil(t, err)
defer func() {
err = os.RemoveAll(path)
require.Nil(t, err)
}()
// ping database should fail
err = drv.Ping(u)
require.EqualError(t, err, "unable to open database file")
}