diff --git a/jackson/src/test/java/com/baeldung/xml/TestClass.java b/jackson/src/test/java/com/baeldung/xml/TestClass.java new file mode 100644 index 0000000000..7b45a61831 --- /dev/null +++ b/jackson/src/test/java/com/baeldung/xml/TestClass.java @@ -0,0 +1,80 @@ +package com.baeldung.jackson.xml; + +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; + +import org.junit.Test; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.dataformat.xml.XmlMapper; + +public class TestClass { + + @Test + public void whenJavaSerializedToXmlStr_thenCorrect() throws JsonProcessingException{ + XmlMapper xmlMapper = new XmlMapper(); + String xml = xmlMapper.writeValueAsString(new SimpleBean()); + assertNotNull(xml); + } + @Test + public void whenJavaSerializedToXmlFile_thenCorrect() throws IOException{ + XmlMapper xmlMapper = new XmlMapper(); + xmlMapper.writeValue(new File("simple_bean.xml"), new SimpleBean()); + File file=new File("simple_bean.xml"); + assertNotNull(file); + } + @Test + public void whenJavaGotFromXmlStr_thenCorrect() throws IOException { + XmlMapper xmlMapper = new XmlMapper(); + SimpleBean value = xmlMapper.readValue( + "12", SimpleBean.class); + assertTrue(value.getX() == 1 && value.getY() == 2); + } + @Test + public void whenJavaGotFromXmlFile_thenCorrect() throws IOException { + File file = new File("simple_bean.xml"); + XmlMapper xmlMapper = new XmlMapper(); + String xml = inputStreamToString(new FileInputStream(file)); + SimpleBean value = xmlMapper.readValue(xml,SimpleBean.class); + assertTrue(value.getX() == 1 && value.getY() == 2); + } + + public static String inputStreamToString(InputStream is) throws IOException { + BufferedReader br = null; + StringBuilder sb = new StringBuilder(); + + String line; + br = new BufferedReader(new InputStreamReader(is)); + while ((line = br.readLine()) != null) { + sb.append(line); + } + br.close(); + return sb.toString(); + + } +} + +class SimpleBean { + private int x = 1; + private int y = 2; + public int getX() { + return x; + } + public void setX(int x) { + this.x = x; + } + public int getY() { + return y; + } + public void setY(int y) { + this.y = y; + } + +}