Skip to content

Fix schemathesis-compatability for list-dict-fields#120

Open
henrikhorluck wants to merge 6 commits into
ghazi-git:mainfrom
henrikhorluck:fix-schema-generation-for-list-dict-fields
Open

Fix schemathesis-compatability for list-dict-fields#120
henrikhorluck wants to merge 6 commits into
ghazi-git:mainfrom
henrikhorluck:fix-schema-generation-for-list-dict-fields

Conversation

@henrikhorluck

@henrikhorluck henrikhorluck commented Jun 24, 2026

Copy link
Copy Markdown

This is an updated rebase of #79, with the additional fix that the patterns are anchored, which fixes the issue noted in #76 (comment) wrt. it being valid under either of an oneOf, the schemathesis-tests now pass, and there are additional fixes surfaced by schemathesis wrt. direct index/fields (e.g.: data=[None] gives attr: "0") and newlines in dict keys (so [\s\S] instead of .).

Also updated to schemathesis 4.

This was assisted by Opus 4.8 and GPT 5.5, I did not find any LLM-policy.

ghazi-git and others added 6 commits June 23, 2026 15:25
…include examples that fail the schema validation done by schemathesis
…t fields.

For example, the regex `\d+\.field1` is used in the API schema to indicate that the API will return attribute values like `0.field1`, `1.field1`. Previously, attr was incorrectly specified as an enum with the value `INDEX.field1` that represents the actual API output.

fix ghazi-git#76
1. Ensure the patterns are anchored, which fixes the oneOf-error from
   the schema validation.
2. Uses `[\s\S]` such that newlines are included in the pattern, which
   was caught by schemathesis.
3. Add parent-fields to expected fields, as caught by schemathesis, as
   e.g. a null-value can render as an error in the index itself.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants