fix: use getArrayCopy for assertMatchesJsonSchema #3807
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR is part of a set of PR whose purpose is to make the assertions
assertMatchesResourceItemJsonSchema
andassertMatchesResourceCollectionJsonSchema
work correctly.The PR are:
additionalProperties
(false) to the generated JSON schema #3804Without doing this, the refs are not correctly expanded and the value is not correctly validated against the JSON Schema.
It's because of this line:
https://github.com/justinrainbow/json-schema/blob/fa4d2d3c1e40a222ded125b679891086c9a6c7d6/src/JsonSchema/SchemaStorage.php#L99
It seems that
property_exists
on anArrayObject
is not considering a key as a property.See: https://3v4l.org/60Mbh