diff options
author | mattn <mattn.jp@gmail.com> | 2020-11-17 01:54:21 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-17 01:54:21 +0900 |
commit | 1fbedab173ca3c57bbc0ed68193be8a7f44e566d (patch) | |
tree | a0f9ecb28f25f866a5a3bba38be3d40e2b1da18c /sqlite3_test.go | |
parent | TestExecContextCancel: Reduce timeout to make less flaky (#879) (diff) | |
download | golite-1fbedab173ca3c57bbc0ed68193be8a7f44e566d.tar.gz golite-1fbedab173ca3c57bbc0ed68193be8a7f44e566d.tar.xz |
Support vfs for Open (#877)
Closes #876
Diffstat (limited to 'sqlite3_test.go')
-rw-r--r-- | sqlite3_test.go | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/sqlite3_test.go b/sqlite3_test.go index d5b0cea..878ec49 100644 --- a/sqlite3_test.go +++ b/sqlite3_test.go @@ -19,6 +19,7 @@ import ( "os" "reflect" "regexp" + "runtime" "strconv" "strings" "sync" @@ -101,6 +102,43 @@ func TestOpen(t *testing.T) { } } +func TestOpenWithVFS(t *testing.T) { + filename := t.Name() + ".sqlite" + + if err := os.Remove(filename); err != nil && !os.IsNotExist(err) { + t.Fatal(err) + } + defer os.Remove(filename) + + db, err := sql.Open("sqlite3", fmt.Sprintf("file:%s?vfs=hello", filename)) + if err != nil { + t.Fatal("Failed to open", err) + } + err = db.Ping() + if err == nil { + t.Fatal("Failed to open", err) + } + db.Close() + + defer os.Remove(filename) + + var vfs string + if runtime.GOOS == "windows" { + vfs = "win32-none" + } else { + vfs = "unix-none" + } + db, err = sql.Open("sqlite3", fmt.Sprintf("file:%s?vfs=%s", filename, vfs)) + if err != nil { + t.Fatal("Failed to open", err) + } + err = db.Ping() + if err != nil { + t.Fatal("Failed to ping", err) + } + db.Close() +} + func TestOpenNoCreate(t *testing.T) { filename := t.Name() + ".sqlite" |