1 package de.juplo.jackson;
3 import com.fasterxml.jackson.core.JsonFactory;
4 import com.fasterxml.jackson.core.JsonParser;
5 import java.io.IOException;
6 import java.io.InputStream;
9 import java.util.Map.Entry;
10 import java.util.Spliterator;
11 import static org.junit.Assert.assertEquals;
12 import static org.junit.Assert.assertFalse;
13 import static org.junit.Assert.assertNull;
14 import static org.junit.Assert.fail;
15 import org.junit.Test;
22 public class SimpleMapperTest
24 private final JsonFactory factory = new JsonFactory();
28 public void testConvertEmptyInputToArraySpliterator() throws Exception
30 Spliterator<Object> spliterator;
32 spliterator = SimpleMapper.getArraySpliterator(get("/empty/1.json"));
34 "The created splitter should have no entries",
35 spliterator.tryAdvance((Object t) ->
37 fail("The consumer should never be called!");
39 spliterator = SimpleMapper.getArraySpliterator(get("/empty/2.json"));
41 "The created splitter should have no entries",
42 spliterator.tryAdvance((Object t) ->
44 fail("The consumer should never be called!");
46 spliterator = SimpleMapper.getArraySpliterator(get("/empty/3.json"));
48 "The created splitter should have no entries",
49 spliterator.tryAdvance((Object t) ->
51 fail("The consumer should never be called!");
53 spliterator = SimpleMapper.getArraySpliterator(get("/empty/4.json"));
55 "The created splitter should have no entries",
56 spliterator.tryAdvance((Object t) ->
58 fail("The consumer should never be called!");
60 spliterator = SimpleMapper.getArraySpliterator(get("/empty/5.json"));
62 "The created splitter should have no entries",
63 spliterator.tryAdvance((Object t) ->
65 fail("The consumer should never be called!");
70 public void testConvertEmptyInputToList() throws Exception
74 list = SimpleMapper.convertArray(get("/empty/1.json"));
75 assertEquals(0, list.size());
76 list = SimpleMapper.convertArray(get("/empty/2.json"));
77 assertEquals(0, list.size());
78 list = SimpleMapper.convertArray(get("/empty/3.json"));
79 assertEquals(0, list.size());
80 list = SimpleMapper.convertArray(get("/empty/4.json"));
81 assertEquals(0, list.size());
82 list = SimpleMapper.convertArray(get("/empty/5.json"));
83 assertEquals(0, list.size());
87 public void testConvertEmptyInputToObjectSpliterator() throws Exception
89 Spliterator<Entry<String, Object>> spliterator;
91 spliterator = SimpleMapper.getObjectSpliterator(get("/empty/1.json"));
93 "The created splitter should have no entries",
94 spliterator.tryAdvance((Entry<String, Object> e) ->
96 fail("The consumer should never be called!");
98 spliterator = SimpleMapper.getObjectSpliterator(get("/empty/2.json"));
100 "The created splitter should have no entries",
101 spliterator.tryAdvance((Entry<String, Object> e) ->
103 fail("The consumer should never be called!");
105 spliterator = SimpleMapper.getObjectSpliterator(get("/empty/3.json"));
107 "The created splitter should have no entries",
108 spliterator.tryAdvance((Entry<String, Object> e) ->
110 fail("The consumer should never be called!");
112 spliterator = SimpleMapper.getObjectSpliterator(get("/empty/4.json"));
114 "The created splitter should have no entries",
115 spliterator.tryAdvance((Entry<String, Object> e) ->
117 fail("The consumer should never be called!");
119 spliterator = SimpleMapper.getObjectSpliterator(get("/empty/5.json"));
121 "The created splitter should have no entries",
122 spliterator.tryAdvance((Entry<String, Object> e) ->
124 fail("The consumer should never be called!");
129 public void testConvertEmptyInputToMap() throws Exception
131 Map<String, Object> map;
133 map = SimpleMapper.convertObject(get("/empty/1.json"));
134 assertEquals(0, map.size());
135 map = SimpleMapper.convertObject(get("/empty/2.json"));
136 assertEquals(0, map.size());
137 map = SimpleMapper.convertObject(get("/empty/3.json"));
138 assertEquals(0, map.size());
139 map = SimpleMapper.convertObject(get("/empty/4.json"));
140 assertEquals(0, map.size());
141 map = SimpleMapper.convertObject(get("/empty/5.json"));
142 assertEquals(0, map.size());
146 public void testConvertEmptyInput() throws Exception
150 object = SimpleMapper.convert(get("/empty/1.json"));
152 object = SimpleMapper.convert(get("/empty/2.json"));
154 object = SimpleMapper.convert(get("/empty/3.json"));
156 object = SimpleMapper.convert(get("/empty/4.json"));
158 object = SimpleMapper.convert(get("/empty/5.json"));
163 private JsonParser get(String resource) throws IOException
165 InputStream is = SimpleMapperTest.class.getResourceAsStream(resource);
166 return factory.createParser(is);