25 lines
1.1 KiB
Markdown
25 lines
1.1 KiB
Markdown
## ADDED Requirements
|
|||
|
|
|
||
|
|
### Requirement: GraphQL Introspection Support
|
||
|
|
The GraphQL API SHALL support introspection queries that enable clients to discover the complete schema dynamically.
|
||
|
|
|
||
|
|
#### Scenario: Introspection query returns schema types
|
||
|
|
- **GIVEN** the GraphQL API is running
|
||
|
|
- **WHEN** a client executes an introspection query for `__schema`
|
||
|
|
- **THEN** the response SHALL include all types defined in the schema
|
||
|
|
- **AND** include queries, mutations, and object types
|
||
|
|
- **AND** include field names, types, and descriptions
|
||
|
|
|
||
|
|
#### Scenario: Introspection query returns type details
|
||
|
|
- **GIVEN** the GraphQL API is running
|
||
|
|
- **WHEN** a client executes an introspection query for `__type(name: "Member")`
|
||
|
|
- **THEN** the response SHALL include complete Member type details
|
||
|
|
- **AND** include all fields with their types
|
||
|
|
- **AND** include field descriptions where defined
|
||
|
|
|
||
|
|
#### Scenario: Introspection is enabled by default
|
||
|
|
- **GIVEN** the Strawberry GraphQL schema is configured
|
||
|
|
- **WHEN** the schema is created
|
||
|
|
- **THEN** introspection SHALL be enabled
|
||
|
|
- **AND** the `__schema` and `__type` queries SHALL be available
|