Merge branch '1.2.x'

This commit is contained in:
Andy Wilkinson
2018-07-19 11:19:22 +01:00
2 changed files with 39 additions and 3 deletions

View File

@@ -158,7 +158,7 @@ public class JsonContentHandlerTests {
}
@Test
public void describedFieldThatIsSometimesPresentChildOfOptionalArrayIsNotConsideredMissing() {
public void describedSometimesPresentFieldThatIsChildOfSometimesPresentOptionalArrayIsNotConsideredMissing() {
List<FieldDescriptor> missingFields = new JsonContentHandler(
"{\"a\":[ {\"b\": \"bravo\"}, {\"b\": \"bravo\", \"c\": { \"d\": \"delta\"}}]}"
.getBytes()).findMissingFields(
@@ -167,4 +167,25 @@ public class JsonContentHandlerTests {
assertThat(missingFields.size(), is(equalTo(0)));
}
@Test
public void describedMissingFieldThatIsChildOfNestedOptionalArrayThatIsEmptyIsNotConsideredMissing() {
List<FieldDescriptor> missingFields = new JsonContentHandler(
"{\"a\":[{\"b\":[]}]}".getBytes()).findMissingFields(
Arrays.asList(new FieldDescriptor("a.[].b").optional(),
new FieldDescriptor("a.[].b.[]").optional(),
new FieldDescriptor("a.[].b.[].c")));
assertThat(missingFields.size(), is(equalTo(0)));
}
@Test
public void describedMissingFieldThatIsChildOfNestedOptionalArrayThatContainsAnObjectIsConsideredMissing() {
List<FieldDescriptor> missingFields = new JsonContentHandler(
"{\"a\":[{\"b\":[{}]}]}".getBytes()).findMissingFields(
Arrays.asList(new FieldDescriptor("a.[].b").optional(),
new FieldDescriptor("a.[].b.[]").optional(),
new FieldDescriptor("a.[].b.[].c")));
assertThat(missingFields.size(), is(equalTo(1)));
assertThat(missingFields.get(0).getPath(), is(equalTo("a.[].b.[].c")));
}
}