|
|
@@ -47,16 +47,16 @@ class SchemaV6Factory extends SchemaFactory {
|
|
|
case "exclusiveMaximum": return new NumberTester(d -> d < value.asDouble());
|
|
|
case "minimum": return new NumberTester(d -> d >= value.asDouble());
|
|
|
case "exclusiveMinimum": return new NumberTester(d -> d > value.asDouble());
|
|
|
- case "maxLength": return new SizeTester(STRING, i -> i < value.asInt());
|
|
|
+ case "maxLength": return new SizeTester(STRING, i -> i <= value.asInt());
|
|
|
case "minLength": return new SizeTester(STRING, i -> i >= value.asInt(0));
|
|
|
case "pattern": return new SimpleTester(STRING, j -> j.asText().matches(value.asText()));
|
|
|
case "additionalItems": return new AllItemsTester(ARRAY, create(value));
|
|
|
case "items": return value.isArray() ? new ItemsTester(createArray(value)) : new AllItemsTester(ARRAY, create(value));
|
|
|
- case "maxItems": return new SizeTester(ARRAY, i -> i < value.asInt());
|
|
|
+ case "maxItems": return new SizeTester(ARRAY, i -> i <= value.asInt());
|
|
|
case "minItems": return new SizeTester(ARRAY, i -> i >= value.asInt(0));
|
|
|
case "uniqueItems": return value.asBoolean() ? UniqueItemTester.INSTANCE : FixedTester.ACCEPT;
|
|
|
case "contains": return new ContainsTester(create(value));
|
|
|
- case "maxProperties": return new SizeTester(OBJECT, i -> i < value.asInt());
|
|
|
+ case "maxProperties": return new SizeTester(OBJECT, i -> i <= value.asInt());
|
|
|
case "minProperties": return new SizeTester(OBJECT, i -> i >= value.asInt(0));
|
|
|
case "required": {
|
|
|
final List<String> reqKeys = JsonHelper.toArray(value, JsonNode::asText);
|