(t *testing.T)
| 557 | } |
| 558 | |
| 559 | func TestGetSchema_LimitForBulkModes(t *testing.T) { |
| 560 | resp := makeMetadataResponse(makeSchema("public", |
| 561 | makeTable("users", 10, []map[string]any{makeColumn("id", "int4", false)}, nil), |
| 562 | )) |
| 563 | |
| 564 | // columns → limit=201 |
| 565 | s, mock := mockMetadataServer(t, employeeDB(), resp) |
| 566 | _, _, err := s.handleGetSchema(testContext(), nil, SchemaInput{Database: "employee_db", Include: "columns"}) |
| 567 | require.NoError(t, err) |
| 568 | require.Equal(t, int32(201), mock.lastCall().Limit) |
| 569 | |
| 570 | // details → limit=201 |
| 571 | s2, mock2 := mockMetadataServer(t, employeeDB(), resp) |
| 572 | _, _, err = s2.handleGetSchema(testContext(), nil, SchemaInput{Database: "employee_db", Include: "details"}) |
| 573 | require.NoError(t, err) |
| 574 | require.Equal(t, int32(201), mock2.lastCall().Limit) |
| 575 | |
| 576 | // summary → no limit |
| 577 | s3, mock3 := mockMetadataServer(t, employeeDB(), resp) |
| 578 | _, _, err = s3.handleGetSchema(testContext(), nil, SchemaInput{Database: "employee_db"}) |
| 579 | require.NoError(t, err) |
| 580 | require.Equal(t, int32(0), mock3.lastCall().Limit) |
| 581 | |
| 582 | // table= → no limit |
| 583 | s4, mock4 := mockMetadataServer(t, employeeDB(), resp) |
| 584 | _, _, err = s4.handleGetSchema(testContext(), nil, SchemaInput{Database: "employee_db", Table: "users"}) |
| 585 | require.NoError(t, err) |
| 586 | require.Equal(t, int32(0), mock4.lastCall().Limit) |
| 587 | } |
| 588 | |
| 589 | func TestGetSchema_NotTruncatedAtExactly200(t *testing.T) { |
| 590 | tables := make([]map[string]any, schemaTableLimit) |
nothing calls this directly
no test coverage detected