private JsonNode addSections(List<HtmlFormSection> sections, ObjectMapper jackson) { ArrayNode node = jackson.createArrayNode(); for (HtmlFormSection section : sections) { ObjectNode sectionNode = jackson.createObjectNode(); sectionNode.put("name", section.getName()); if (section.getSections() != null && section.getSections().size() > 0) { sectionNode.put("sections", (addSections(section.getSections(), jackson))); } if (section.getFields() != null && section.getFields().size() > 0) { sectionNode.put("fields", (addFields(section.getFields(), jackson))); } node.add(sectionNode); } return node; }
Assert.assertThat(hfs.getSections().get(0).getName(), is("Section One")); Assert.assertThat(hfs.getSections().get(0).getFields().size(), is(1)); Assert.assertThat(((ObsField) hfs.getSections().get(0).getFields().get(0)).getQuestion().getId(), is(3032)); Assert.assertThat(hfs.getSections().get(0).getSections().get(0).getName(), is("Section One Inner One"));