Documentation
¶
Overview ¶
Package gaussdbxtest provides utilities for testing gaussdbgo and packages that integrate with gaussdbgo.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var AllQueryExecModes = []gaussdbgo.QueryExecMode{
gaussdbgo.QueryExecModeCacheStatement,
gaussdbgo.QueryExecModeCacheDescribe,
gaussdbgo.QueryExecModeDescribeExec,
gaussdbgo.QueryExecModeExec,
gaussdbgo.QueryExecModeSimpleProtocol,
}
var KnownOIDQueryExecModes = []gaussdbgo.QueryExecMode{
gaussdbgo.QueryExecModeCacheStatement,
gaussdbgo.QueryExecModeCacheDescribe,
gaussdbgo.QueryExecModeDescribeExec,
}
KnownOIDQueryExecModes is a slice of all query exec modes where the param and result OIDs are known before sending the query.
Functions ¶
func RunValueRoundTripTests ¶
func RunValueRoundTripTests( ctx context.Context, t testing.TB, ctr ConnTestRunner, modes []gaussdbgo.QueryExecMode, gaussdbTypeName string, tests []ValueRoundTripTest, )
func RunWithQueryExecModes ¶
func RunWithQueryExecModes(ctx context.Context, t *testing.T, ctr ConnTestRunner, modes []gaussdbgo.QueryExecMode, f func(ctx context.Context, t testing.TB, conn *gaussdbgo.Conn))
RunWithQueryExecModes runs a f in a new test for each element of modes with a new connection created using connector. If modes is nil all gaussdbgo.QueryExecModes are tested.
Types ¶
type ConnTestRunner ¶
type ConnTestRunner struct {
// CreateConfig returns a *gaussdbgo.ConnConfig suitable for use with gaussdbgo.ConnectConfig.
CreateConfig func(ctx context.Context, t testing.TB) *gaussdbgo.ConnConfig
// AfterConnect is called after conn is established. It allows for arbitrary connection setup before a test begins.
AfterConnect func(ctx context.Context, t testing.TB, conn *gaussdbgo.Conn)
// AfterTest is called after the test is run. It allows for validating the state of the connection before it is closed.
AfterTest func(ctx context.Context, t testing.TB, conn *gaussdbgo.Conn)
// CloseConn closes conn.
CloseConn func(ctx context.Context, t testing.TB, conn *gaussdbgo.Conn)
}
ConnTestRunner controls how a *gaussdbgo.Conn is created and closed by tests. All fields are required. Use DefaultConnTestRunner to get a ConnTestRunner with reasonable default values.
func DefaultConnTestRunner ¶
func DefaultConnTestRunner() ConnTestRunner
DefaultConnTestRunner returns a new ConnTestRunner with all fields set to reasonable default values.