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

Function TestLogBatchStatementsOnBatchResultClose

tracelog/tracelog_test.go:370–407  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

368}
369
370func TestLogBatchStatementsOnBatchResultClose(t *testing.T) {
371 t.Parallel()
372
373 ctx, cancel := context.WithTimeout(context.Background(), 120*time.Second)
374 defer cancel()
375
376 logger := &testLogger{}
377 tracer := &tracelog.TraceLog{
378 Logger: logger,
379 LogLevel: tracelog.LogLevelTrace,
380 }
381
382 ctr := defaultConnTestRunner
383 ctr.CreateConfig = func(ctx context.Context, t testing.TB) *pgx.ConnConfig {
384 config := defaultConnTestRunner.CreateConfig(ctx, t)
385 config.Tracer = tracer
386 return config
387 }
388
389 pgxtest.RunWithQueryExecModes(ctx, t, ctr, nil, func(ctx context.Context, t testing.TB, conn *pgx.Conn) {
390 logger.Clear() // Clear any logs written when establishing connection
391
392 batch := &pgx.Batch{}
393 batch.Queue("select generate_series(1,$1)", 100)
394 batch.Queue("select 1 = 1;")
395
396 br := conn.SendBatch(ctx, batch)
397 err := br.Close()
398 require.NoError(t, err)
399
400 require.Len(t, logger.logs, 3)
401 assert.Equal(t, "BatchQuery", logger.logs[0].msg)
402 assert.Equal(t, "select generate_series(1,$1)", logger.logs[0].data["sql"])
403 assert.Equal(t, "BatchQuery", logger.logs[1].msg)
404 assert.Equal(t, "select 1 = 1;", logger.logs[1].data["sql"])
405 assert.Equal(t, "BatchClose", logger.logs[2].msg)
406 })
407}
408
409func TestLogAcquire(t *testing.T) {
410 t.Parallel()

Callers

nothing calls this directly

Calls 6

ClearMethod · 0.95
QueueMethod · 0.95
RunWithQueryExecModesFunction · 0.92
SendBatchMethod · 0.65
CloseMethod · 0.65
LenMethod · 0.65

Tested by

no test coverage detected