javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/JSONTest.java
branchmodel
changeset 921 cd0a40987abb
parent 920 e2977ec1ef6e
child 934 19b4ddc302a6
     1.1 --- a/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/JSONTest.java	Wed Apr 03 10:20:17 2013 +0200
     1.2 +++ b/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/JSONTest.java	Wed Apr 03 11:37:52 2013 +0200
     1.3 @@ -77,5 +77,35 @@
     1.4          assertEquals(o.get("sex"), JSONObject.NULL);
     1.5      }
     1.6      
     1.7 -    
     1.8 +    @Test public void personsInArray() throws JSONException {
     1.9 +        Person p1 = new Person();
    1.10 +        p1.setFirstName("One");
    1.11 +
    1.12 +        Person p2 = new Person();
    1.13 +        p2.setFirstName("Two");
    1.14 +        
    1.15 +        People arr = new People();
    1.16 +        arr.getInfo().add(p1);
    1.17 +        arr.getInfo().add(p2);
    1.18 +        arr.getNicknames().add("Prvn\u00ed k\u016f\u0148");
    1.19 +        final String n2 = "Druh\u00fd hlem\u00fd\u017e\u010f, star\u0161\u00ed";
    1.20 +        arr.getNicknames().add(n2);
    1.21 +        arr.getAge().add(33);
    1.22 +        arr.getAge().add(73);
    1.23 +        
    1.24 +        
    1.25 +        final String json = arr.toString();
    1.26 +        
    1.27 +        JSONTokener t = new JSONTokener(json);
    1.28 +        JSONObject o;
    1.29 +        try {
    1.30 +            o = new JSONObject(t);
    1.31 +        } catch (JSONException ex) {
    1.32 +            throw new AssertionError("Can't parse " + json, ex);
    1.33 +        }
    1.34 +
    1.35 +        assertEquals(o.getJSONArray("info").getJSONObject(0).getString("firstName"), "One");
    1.36 +        assertEquals(o.getJSONArray("nicknames").getString(1), n2);
    1.37 +        assertEquals(o.getJSONArray("age").getInt(1), 73);
    1.38 +    }
    1.39  }