From 1fbedab173ca3c57bbc0ed68193be8a7f44e566d Mon Sep 17 00:00:00 2001 From: mattn Date: Tue, 17 Nov 2020 01:54:21 +0900 Subject: Support vfs for Open (#877) Closes #876 --- sqlite3_test.go | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'sqlite3_test.go') 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" -- cgit v1.2.3