Skip to content

Commit 5ebdd88

Browse files
committed
improved error reporting for ObjectSchema minProperties and maxProperties (includes violated keyword)
1 parent 711e5bb commit 5ebdd88

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

core/src/main/java/org/everit/json/schema/ObjectSchema.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -362,12 +362,12 @@ private List<ValidationException> testSize(final JSONObject subject) {
362362
if (minProperties != null && actualSize < minProperties.intValue()) {
363363
return Arrays
364364
.asList(new ValidationException(this, String.format("minimum size: [%d], found: [%d]",
365-
minProperties, actualSize)));
365+
minProperties, actualSize), "minProperties"));
366366
}
367367
if (maxProperties != null && actualSize > maxProperties.intValue()) {
368368
return Arrays
369369
.asList(new ValidationException(this, String.format("maximum size: [%d], found: [%d]",
370-
maxProperties, actualSize)));
370+
maxProperties, actualSize), "maxProperties"));
371371
}
372372
return Collections.emptyList();
373373
}

core/src/test/java/org/everit/json/schema/ObjectSchemaTest.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,13 +48,21 @@ public void additionalPropertySchema() {
4848
@Test
4949
public void maxPropertiesFailure() {
5050
ObjectSchema subject = ObjectSchema.builder().maxProperties(2).build();
51-
TestSupport.expectFailure(subject, "#", OBJECTS.get("maxPropertiesFailure"));
51+
TestSupport.failureOf(subject)
52+
.input(OBJECTS.get("maxPropertiesFailure"))
53+
.expectedPointer("#")
54+
.expectedKeyword("maxProperties")
55+
.expect();
5256
}
5357

5458
@Test
5559
public void minPropertiesFailure() {
5660
ObjectSchema subject = ObjectSchema.builder().minProperties(2).build();
57-
TestSupport.expectFailure(subject, "#", OBJECTS.get("minPropertiesFailure"));
61+
TestSupport.failureOf(subject)
62+
.input(OBJECTS.get("minPropertiesFailure"))
63+
.expectedPointer("#")
64+
.expectedKeyword("minProperties")
65+
.expect();
5866
}
5967

6068
@Test

0 commit comments

Comments
 (0)