public void testDifferentAnnotations() throws Exception { Persister persister = new Persister(); Example example = new Example("a", "b"); StringWriter writer = new StringWriter(); persister.write(example, writer); String text = writer.toString(); Example deserialized = persister.read(Example.class, text); assertEquals(deserialized.getKey(), "a"); assertEquals(deserialized.getValue(), "b"); validate(persister, deserialized); }
public void testCompositeArrayLength() throws Exception { Persister persister = new Persister(); boolean exception = false; try { B b = persister.read(B.class, COMPOSITE_PRIMITIVE_LENGTH); } catch (ElementException e) { e.printStackTrace(); exception = true; } assertTrue("Invalid array length is an exception", exception); }
public void testInlineList() throws Exception { Persister persister = new Persister(); MapExample example = persister.read(MapExample.class, SOURCE); Map<String, Node> map = example.map; assertEquals(map.size(), 4); assertEquals(map.get("1").getClass(), X.class); assertEquals(map.get("1").name(), "A"); assertEquals(map.get("2").getClass(), Y.class); assertEquals(map.get("2").name(), "B"); assertEquals(map.get("3").getClass(), Y.class); assertEquals(map.get("3").name(), "C"); assertEquals(map.get("4").getClass(), Z.class); assertEquals(map.get("4").name(), "D"); validate(persister, example); }
public void testDifferentListAnnotations() throws Exception { Persister persister = new Persister(); List<String> list = new ArrayList<String>(); ExampleList example = new ExampleList(list, "a"); list.add("1"); list.add("2"); list.add("3"); list.add("4"); StringWriter writer = new StringWriter(); persister.write(example, writer); String text = writer.toString(); ExampleList deserialized = persister.read(ExampleList.class, text); assertEquals(deserialized.getList().size(), 4); assertTrue(deserialized.getList().contains("1")); assertTrue(deserialized.getList().contains("2")); assertTrue(deserialized.getList().contains("3")); assertTrue(deserialized.getList().contains("4")); assertEquals(deserialized.getName(), "a"); validate(persister, deserialized); }