javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/ConvertTypesTest.java
1.1 --- a/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/ConvertTypesTest.java Tue Apr 09 10:06:19 2013 +0200
1.2 +++ b/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/ConvertTypesTest.java Thu Apr 18 17:28:34 2013 +0200
1.3 @@ -20,6 +20,8 @@
1.4 import org.apidesign.bck2brwsr.core.JavaScriptBody;
1.5 import org.apidesign.bck2brwsr.vmtest.BrwsrTest;
1.6 import org.apidesign.bck2brwsr.vmtest.VMTest;
1.7 +import org.json.JSONException;
1.8 +import org.json.JSONObject;
1.9 import org.testng.annotations.Factory;
1.10
1.11 /**
1.12 @@ -27,17 +29,25 @@
1.13 * @author Jaroslav Tulach <jtulach@netbeans.org>
1.14 */
1.15 public class ConvertTypesTest {
1.16 - @JavaScriptBody(args = { }, body = "var json = new Object();"
1.17 + @JavaScriptBody(args = { "includeSex" }, body = "var json = new Object();"
1.18 + "json.firstName = 'son';\n"
1.19 + "json.lastName = 'dj';\n"
1.20 + "json.sex = 'MALE';\n"
1.21 + "return json;"
1.22 )
1.23 - private static native Object createJSON();
1.24 + private static Object createJSON(boolean includeSex) throws JSONException {
1.25 + JSONObject o = new JSONObject();
1.26 + o.put("firstName", "son");
1.27 + o.put("lastName", "dj");
1.28 + if (includeSex) {
1.29 + o.put("sex", "MALE");
1.30 + }
1.31 + return o;
1.32 + }
1.33
1.34 @BrwsrTest
1.35 - public void testConvertToPeople() {
1.36 - final Object o = createJSON();
1.37 + public void testConvertToPeople() throws JSONException {
1.38 + final Object o = createJSON(true);
1.39
1.40 Person p = new Person(o);
1.41
1.42 @@ -45,6 +55,17 @@
1.43 assert "dj".equals(p.getLastName()) : "Last name: " + p.getLastName();
1.44 assert Sex.MALE.equals(p.getSex()) : "Sex: " + p.getSex();
1.45 }
1.46 +
1.47 + @BrwsrTest
1.48 + public void testConvertToPeopleWithoutSex() throws JSONException {
1.49 + final Object o = createJSON(false);
1.50 +
1.51 + Person p = new Person(o);
1.52 +
1.53 + assert "son".equals(p.getFirstName()) : "First name: " + p.getFirstName();
1.54 + assert "dj".equals(p.getLastName()) : "Last name: " + p.getLastName();
1.55 + assert p.getSex() == null : "No sex: " + p.getSex();
1.56 + }
1.57
1.58 @Factory public static Object[] create() {
1.59 return VMTest.create(ConvertTypesTest.class);