Commit 31dc8ea
authored
Ensure parser uses errorMessage for minContains/maxContains (#229)
Prior to this change, the language server ignored any defined
`errorMessage` when a subschema fails validation for a `contains`
keyword and `minContains` is defined. The `errorMessage` was only
used when `minContains` was not defined and no item in the array
matched the subschema. Even if `minContains` isn't defined, the parser
ignores `errorMessage` when the array contains more matching items than
`maxContains` allows.
This change updates the parser to use the `errorMessage`, if defined,
for any failure of the `contains` keyword, regardless of the values of
`minContains` and `maxContains`.
This is useful for cases where a developer wants to define an error
message indicating both what the schema expects to contain and how many
times. The default error message is not very helpful in these cases,
because most users won't know how to look up "the contains contraint"
for whatever file they're working with.1 parent ad4b805 commit 31dc8ea
1 file changed
+2
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
810 | 810 | | |
811 | 811 | | |
812 | 812 | | |
813 | | - | |
| 813 | + | |
814 | 814 | | |
815 | 815 | | |
816 | 816 | | |
817 | 817 | | |
818 | 818 | | |
819 | | - | |
| 819 | + | |
820 | 820 | | |
821 | 821 | | |
822 | 822 | | |
| |||
0 commit comments