MCPcopy Create free account
hub / github.com/bytebase/bytebase / TestQueryDatabase_CustomLimit

Function TestQueryDatabase_CustomLimit

backend/api/mcp/tool_query_test.go:549–572  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

547}
548
549func TestQueryDatabase_CustomLimit(t *testing.T) {
550 databases := []map[string]any{
551 makeDatabase("instances/prod-pg/databases/employee_db", "instances/prod-pg", "projects/hr-system", "POSTGRES", "ds-admin-1"),
552 }
553 rows := make([][]any, 100)
554 for i := range rows {
555 rows[i] = []any{fmt.Sprintf("%d", i+1)}
556 }
557 qr := makeQueryResponse([]string{"id"}, []string{"int4"}, rows, "0.020s")
558 s := newTestServerWithMock(t, mockQueryServer(databases, qr))
559
560 result, structured, err := s.handleQueryDatabase(testContext(), nil, QueryInput{
561 Database: "employee_db",
562 Statement: "SELECT id FROM users",
563 Limit: 50,
564 })
565 require.NoError(t, err)
566 require.False(t, result.IsError)
567
568 output, ok := structured.(*QueryOutput)
569 require.True(t, ok)
570 require.Equal(t, 50, output.RowCount)
571 require.True(t, output.Truncated)
572}
573
574func TestQueryDatabase_LimitCappedAt1000(t *testing.T) {
575 databases := []map[string]any{

Callers

nothing calls this directly

Calls 7

makeQueryResponseFunction · 0.85
newTestServerWithMockFunction · 0.85
mockQueryServerFunction · 0.85
testContextFunction · 0.85
handleQueryDatabaseMethod · 0.80
makeDatabaseFunction · 0.70
EqualMethod · 0.65

Tested by

no test coverage detected