File tree Expand file tree Collapse file tree 2 files changed +24
-4
lines changed
Expand file tree Collapse file tree 2 files changed +24
-4
lines changed Original file line number Diff line number Diff line change @@ -58,6 +58,7 @@ import (
5858 "math"
5959 "math/rand"
6060 "reflect"
61+ "sort"
6162 "strconv"
6263 "strings"
6364 "sync"
@@ -84,7 +85,13 @@ func init() {
8485 configs : make (map [string ]* pgx.ConnConfig ),
8586 }
8687 fakeTxConns = make (map [* pgx.Conn ]* sql.Tx )
87- sql .Register ("pgx" , pgxDriver )
88+
89+ drivers := sql .Drivers ()
90+ // if pgx driver was already registered by different pgx major version then we skip registration under the default name.
91+ if i := sort .SearchStrings (sql .Drivers (), "pgx" ); len (drivers ) >= i || drivers [i ] != "pgx" {
92+ sql .Register ("pgx" , pgxDriver )
93+ }
94+ sql .Register ("pgx/v4" , pgxDriver )
8895
8996 databaseSQLResultFormats = pgx.QueryResultFormatsByOID {
9097 pgtype .BoolOID : 1 ,
Original file line number Diff line number Diff line change @@ -157,9 +157,22 @@ func closeStmt(t *testing.T, stmt *sql.Stmt) {
157157}
158158
159159func TestSQLOpen (t * testing.T ) {
160- db , err := sql .Open ("pgx" , os .Getenv ("PGX_TEST_DATABASE" ))
161- require .NoError (t , err )
162- closeDB (t , db )
160+ tests := []struct {
161+ driverName string
162+ }{
163+ {driverName : "pgx" },
164+ {driverName : "pgx/v4" },
165+ }
166+
167+ for _ , tt := range tests {
168+ tt := tt
169+
170+ t .Run (tt .driverName , func (t * testing.T ) {
171+ db , err := sql .Open (tt .driverName , os .Getenv ("PGX_TEST_DATABASE" ))
172+ require .NoError (t , err )
173+ closeDB (t , db )
174+ })
175+ }
163176}
164177
165178func TestNormalLifeCycle (t * testing.T ) {
You can’t perform that action at this time.
0 commit comments