()
| 1492 | |
| 1493 | #[test] |
| 1494 | fn querystring_parameter_with_complex_schema() -> Result<(), Box<dyn std::error::Error>> { |
| 1495 | let content = r#" |
| 1496 | openapi: 3.2.0 |
| 1497 | info: |
| 1498 | title: Complex QueryString API |
| 1499 | version: '1.0.0' |
| 1500 | paths: |
| 1501 | /search: |
| 1502 | get: |
| 1503 | summary: Advanced search |
| 1504 | parameters: |
| 1505 | - name: filters |
| 1506 | in: querystring |
| 1507 | description: Complex filter object as query string |
| 1508 | required: true |
| 1509 | content: |
| 1510 | application/json: |
| 1511 | schema: |
| 1512 | type: object |
| 1513 | properties: |
| 1514 | name: |
| 1515 | type: string |
| 1516 | description: Filter by name |
| 1517 | minLength: 1 |
| 1518 | maxLength: 100 |
| 1519 | email: |
| 1520 | type: string |
| 1521 | format: email |
| 1522 | description: Filter by email |
| 1523 | age_min: |
| 1524 | type: integer |
| 1525 | minimum: 0 |
| 1526 | maximum: 150 |
| 1527 | age_max: |
| 1528 | type: integer |
| 1529 | minimum: 0 |
| 1530 | maximum: 150 |
| 1531 | status: |
| 1532 | type: string |
| 1533 | enum: [active, inactive, pending, suspended] |
| 1534 | tags: |
| 1535 | type: array |
| 1536 | items: |
| 1537 | type: string |
| 1538 | created_after: |
| 1539 | type: string |
| 1540 | format: date-time |
| 1541 | coordinates: |
| 1542 | type: object |
| 1543 | properties: |
| 1544 | lat: |
| 1545 | type: number |
| 1546 | format: float |
| 1547 | minimum: -90 |
| 1548 | maximum: 90 |
| 1549 | lng: |
| 1550 | type: number |
| 1551 | format: float |
nothing calls this directly
no outgoing calls
no test coverage detected