Commit adf617c
committed
test: drive 0016 fixtures 021-028 + add structured-output unit tests
Removes the deferred-fixture skip markers for the 8 structured-output
conformance fixtures (021–028). All pass against the OpenAIProvider
+ harness extensions landed in earlier commits.
Adds tests/unit/test_structured_output.py covering bits the
conformance fixtures don't exercise directly:
- validate_response_schema edge cases: non-dict, non-object top-level,
missing type.
- strict_mode_supported: required-coverage rule, additionalProperties
true, nested-object violation, anyOf branch violation, internal $ref
resolution, unresolvable $ref, $ref cycle (self-referential schema).
- _derive_schema_name: title-when-present, hash-fallback, determinism,
empty-title behavior.
- _augment_messages_with_schema_directive: prepend-when-no-system,
extend-existing-system, caller-list-not-mutated, serialized-schema-
substring.
- Pydantic-class overload: class-in returns validated BaseModel
instance; pydantic ValidationError wraps in StructuredOutputInvalid;
wire body produced from class equals wire body produced from the
equivalent .model_json_schema() dict.
- uses_prompt_augmentation_fallback inspect property: False by
default, True when constructor flag is set.1 parent 66aa908 commit adf617c
2 files changed
Lines changed: 401 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
75 | 75 | | |
76 | 76 | | |
77 | 77 | | |
78 | | - | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | | - | |
84 | | - | |
85 | | - | |
86 | | - | |
87 | | - | |
88 | | - | |
89 | 78 | | |
90 | 79 | | |
91 | 80 | | |
| |||
0 commit comments