@BeforeEach @SuppressWarnings({"unchecked"}) void setUp() { DataCreator dataCreator = new DataCreator(); pedroZip = new Zipcode("848485"); Person pedro = dataCreator.createPedro(); jodder = dataCreator.createJodder(); modesty = dataCreator.createModesty(); colors = dataCreator.createColorMap(); people = new ArrayList(); people.add(jodder); people.add(modesty); people.add(pedro); dilbert = dataCreator.createDilbert(); network = dataCreator.createNetwork("My Network", jodder, modesty); }
@Test void testListDeserializationNoClass2() { JsonParsers.forEachParser(jsonParser -> { Person modesty = creator.createModesty(); Person igor = creator.createJodder(); Person pedro = creator.createPedro(); List<Person> list = new ArrayList<>(3); list.add(modesty); list.add(igor); list.add(pedro); String json = new JsonSerializer().serialize(list); List<Person> people = jsonParser.map("values", Person.class).parse(json); assertEquals(3, list.size()); assertEquals(modesty.getFirstname(), list.get(0).getFirstname()); assertEquals(igor.getFirstname(), list.get(1).getFirstname()); assertEquals(pedro.getFirstname(), list.get(2).getFirstname()); }); }
@Test void testListDeserializationNoClass() { JsonParser.Defaults.classMetadataName = "class"; JsonSerializer.Defaults.classMetadataName = "class"; JsonParsers.forEachParser(jsonParser -> { Person modesty = creator.createModesty(); Person igor = creator.createJodder(); Person pedro = creator.createPedro(); List<Person> list = new ArrayList<>(3); list.add(modesty); list.add(igor); list.add(pedro); String json = new JsonSerializer().exclude("*.class").serialize(list); List<Person> people = jsonParser.map("values", Person.class).parse(json); assertEquals(3, list.size()); assertEquals(modesty.getFirstname(), list.get(0).getFirstname()); assertEquals(igor.getFirstname(), list.get(1).getFirstname()); assertEquals(pedro.getFirstname(), list.get(2).getFirstname()); }); }
@Test void testListSerialization() { JsonParser.Defaults.classMetadataName = "class"; JsonSerializer.Defaults.classMetadataName = "class"; Person modesty = creator.createModesty(); Person igor = creator.createJodder(); Person pedro = creator.createPedro(); List<Person> list = new ArrayList<>(3); list.add(modesty); list.add(igor); list.add(pedro); JsonParsers.forEachParser(jsonParser -> { String json = new JsonSerializer().serialize(list); List<Person> people = jsonParser.parse(json); assertTrue(people instanceof List); json = new JsonSerializer().exclude("*.class").serialize(list); people = jsonParser.map("values", Person.class).parse(json); assertEquals(3, people.size()); assertEquals(Person.class, people.get(0).getClass()); }); JsonParsers.forEachParser(jsonParser -> { String json = new JsonSerializer().exclude("*.class").serialize(list); List<Map> peopleMap = jsonParser.parse(json); assertEquals(3, peopleMap.size()); assertTrue(peopleMap.get(0) instanceof Map); }); }
@Test void testArray() { JsonParsers.forEachParser(jsonParser -> { Person[] p = new Person[3]; p[0] = creator.createJodder(); p[1] = creator.createDilbert(); p[2] = creator.createModesty(); String json = new JsonSerializer().serialize(p); Person[] jsonP = jsonParser.parse(json, Person[].class); assertEquals(3, jsonP.length); assertEquals("Igor", jsonP[0].getFirstname()); assertEquals("Dilbert", jsonP[1].getFirstname()); assertEquals("Modesty", jsonP[2].getFirstname()); }); }
@Test void testArrayType() { JsonParsers.forEachParser(jsonParser -> { Person igor = creator.createJodder(); Person modesty = creator.createModesty(); Group group = new Group("brothers", igor, modesty); String json = new JsonSerializer().include("people").exclude("*.class").serialize(group); Group bro = jsonParser.map(Group.class).parse(json); assertNotNull(bro); assertEquals("brothers", bro.getGroupName()); assertEquals(2, bro.getPeople().length); assertEquals("Igor", bro.getPeople()[0].getFirstname()); assertEquals("Modesty", bro.getPeople()[1].getFirstname()); }); }