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.
As stated in Issue 975, the reference resolver for properties does not fully recurse. This can lead to unresolved references when parsing with
ParseOptions.setResolveFully(true)and there are properties with nested arrays/maps/composed schemas. The included test case has 10 variants of properties, of which 7 were not resolved fully before the change.Prior to the fix, these are the failed test cases:
One question - the tests are structured so that each Assert is in a separate test, to make it easy to see which properties were not parsed properly. If preferred, all tests can be merged into one test method, which is more compact. If so, I can close this PR and reissue with a PR in which the tests are replaced with this code: