### Question:
JacksonBundleParser extends AbstractValueParser<Map<String, String>> implements BundleParser { @Override protected Map<String, String> parse(ResourceObject object) throws IOException, ResourceObjectException { Map<String, String> bundle = new HashMap<>(); processNode(bundle, json().parse(object), ""); return bundle; } JacksonBundleParser();  JacksonBundleParser(String arraySizeKey);   }### Answer:
@Test public void shouldParseJsonBundle() throws IOException { JacksonBundleParser parser = new JacksonBundleParser(); Map<String, String> map = parser.parse(resources.contentOf("test.json")); assertEquals("localhost", map.get("mail.server.host")); }
@Test public void shouldParseArrayInJsonBundle() throws IOException { JacksonBundleParser parser = new JacksonBundleParser(); Map<String, String> map = parser.parse(resources.contentOf("test.json")); assertNotNull(map.get("items[0]")); assertEquals("1", map.get("items[0]")); }
@Test public void shouldParseEmptyBundle() throws IOException { JacksonBundleParser parser = new JacksonBundleParser(); Map<String, String> map = parser.parse(new ByteArrayResourceObject("","", "{}".getBytes(), 0)); assertTrue(map.isEmpty()); }