implement go18 Pinger

This commit is contained in:
Yasuhiro Matsumoto 2016-11-03 23:05:34 +09:00
parent 86681de00a
commit 6796d46c3a
2 changed files with 30 additions and 0 deletions

14
sqlite3_context.go Normal file
View File

@ -0,0 +1,14 @@
package sqlite3
import (
"context"
"errors"
)
// Ping implement Pinger.
func (c *SQLiteConn) Ping(ctx context.Context) error {
if c.db == nil {
return errors.New("Connection was closed")
}
return nil
}

View File

@ -1315,6 +1315,22 @@ func TestDeclTypes(t *testing.T) {
} }
} }
func TestPinger(t *testing.T) {
db, err := sql.Open("sqlite3", ":memory:")
if err != nil {
t.Fatal(err)
}
err = db.Ping()
if err != nil {
t.Fatal(err)
}
db.Close()
err = db.Ping()
if err == nil {
t.Fatal("Should be closed")
}
}
var customFunctionOnce sync.Once var customFunctionOnce sync.Once
func BenchmarkCustomFunctions(b *testing.B) { func BenchmarkCustomFunctions(b *testing.B) {