1.1 --- a/json-tck/src/main/java/net/java/html/json/tests/ConvertTypesTest.java Sun Jun 07 20:40:39 2015 +0200
1.2 +++ b/json-tck/src/main/java/net/java/html/json/tests/ConvertTypesTest.java Sun Jun 14 21:45:02 2015 +0200
1.3 @@ -45,6 +45,7 @@
1.4 import java.io.ByteArrayInputStream;
1.5 import java.io.EOFException;
1.6 import java.io.InputStream;
1.7 +import java.io.SequenceInputStream;
1.8 import java.io.UnsupportedEncodingException;
1.9 import java.util.ArrayList;
1.10 import java.util.HashMap;
1.11 @@ -266,6 +267,34 @@
1.12 assertNull(p.getSex(), "No sex: " + p.getSex());
1.13 }
1.14 }
1.15 +
1.16 + @KOTest
1.17 + public void parseFiveElementsAsAnArray() throws Exception {
1.18 + final BrwsrCtx c = newContext();
1.19 + final InputStream o = createIS(false, false, 5);
1.20 + SequenceInputStream is = new SequenceInputStream(
1.21 + new ByteArrayInputStream("{ \"info\" : ".getBytes("UTF-8")),
1.22 + new SequenceInputStream(
1.23 + o,
1.24 + new ByteArrayInputStream("}".getBytes("UTF-8"))
1.25 + )
1.26 + );
1.27 +
1.28 + List<People> res = new ArrayList<People>();
1.29 + Models.parse(c, People.class, is, res);
1.30 +
1.31 + assertEquals(res.size(), 1, "One people" + res);
1.32 +
1.33 + int cnt = 0;
1.34 + for (Person p : res.get(0).getInfo()) {
1.35 + assertEquals("son", p.getFirstName(), "First name: " + p.getFirstName());
1.36 + assertEquals("dj", p.getLastName(), "Last name: " + p.getLastName());
1.37 + assertNull(p.getSex(), "No sex: " + p.getSex());
1.38 + cnt++;
1.39 + }
1.40 +
1.41 + assertEquals(cnt, 5, "Fives people found in info");
1.42 + }
1.43
1.44 @KOTest
1.45 public void parseOnEmptyArray() throws Exception {