MCPcopy
hub / github.com/jackc/pgx / skipPostgreSQLVersionLessThan

Function skipPostgreSQLVersionLessThan

stdlib/sql_test.go:57–83  ·  view source on GitHub ↗
(t testing.TB, db *sql.DB, minVersion int64)

Source from the content-addressed store, hash-verified

55}
56
57func skipPostgreSQLVersionLessThan(t testing.TB, db *sql.DB, minVersion int64) {
58 conn, err := db.Conn(context.Background())
59 require.NoError(t, err)
60 defer conn.Close()
61
62 err = conn.Raw(func(driverConn any) error {
63 conn := driverConn.(*stdlib.Conn).Conn()
64 serverVersionStr := conn.PgConn().ParameterStatus("server_version")
65 serverVersionStr = regexp.MustCompile(`^[0-9]+`).FindString(serverVersionStr)
66 // if not PostgreSQL do nothing
67 if serverVersionStr == "" {
68 return nil
69 }
70
71 serverVersion, err := strconv.ParseInt(serverVersionStr, 10, 64)
72 if err != nil {
73 return err
74 }
75
76 if serverVersion < minVersion {
77 t.Skipf("Test requires PostgreSQL v%d+", minVersion)
78 }
79
80 return nil
81 })
82 require.NoError(t, err)
83}
84
85func testWithAllQueryExecModes(t *testing.T, f func(t *testing.T, db *sql.DB)) {
86 for _, mode := range []pgx.QueryExecMode{

Callers 1

Calls 4

ParameterStatusMethod · 0.80
PgConnMethod · 0.80
ConnMethod · 0.65
CloseMethod · 0.65

Tested by

no test coverage detected