mirror of
https://github.com/fnproject/fn.git
synced 2022-10-28 21:29:17 +03:00
* initial Db helper split - make SQL and datastore packages optional * abstracting log store * break out DB, MQ and log drivers as extensions * cleanup * fewer deps * fixing docker test * hmm dbness * updating db startup * Consolidate all your extensions into one convenient package * cleanup * clean up dep constraints
68 lines
1.3 KiB
Go
68 lines
1.3 KiB
Go
// +build go1.10
|
|
|
|
package pq
|
|
|
|
import (
|
|
"context"
|
|
"database/sql"
|
|
"database/sql/driver"
|
|
"testing"
|
|
)
|
|
|
|
func TestNewConnector_WorksWithOpenDB(t *testing.T) {
|
|
name := ""
|
|
c, err := NewConnector(name)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
db := sql.OpenDB(c)
|
|
defer db.Close()
|
|
// database/sql might not call our Open at all unless we do something with
|
|
// the connection
|
|
txn, err := db.Begin()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
txn.Rollback()
|
|
}
|
|
|
|
func TestNewConnector_Connect(t *testing.T) {
|
|
name := ""
|
|
c, err := NewConnector(name)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
db, err := c.Connect(context.Background())
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
defer db.Close()
|
|
// database/sql might not call our Open at all unless we do something with
|
|
// the connection
|
|
txn, err := db.(driver.ConnBeginTx).BeginTx(context.Background(), driver.TxOptions{})
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
txn.Rollback()
|
|
}
|
|
|
|
func TestNewConnector_Driver(t *testing.T) {
|
|
name := ""
|
|
c, err := NewConnector(name)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
db, err := c.Driver().Open(name)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
defer db.Close()
|
|
// database/sql might not call our Open at all unless we do something with
|
|
// the connection
|
|
txn, err := db.(driver.ConnBeginTx).BeginTx(context.Background(), driver.TxOptions{})
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
txn.Rollback()
|
|
}
|