1.1 --- a/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/JSONTest.java Tue Apr 09 10:06:19 2013 +0200
1.2 +++ b/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/JSONTest.java Wed Apr 10 11:43:46 2013 +0200
1.3 @@ -17,7 +17,9 @@
1.4 */
1.5 package org.apidesign.bck2brwsr.htmlpage;
1.6
1.7 +import java.util.Arrays;
1.8 import java.util.Iterator;
1.9 +import org.apidesign.bck2brwsr.core.JavaScriptBody;
1.10 import org.apidesign.bck2brwsr.htmlpage.api.OnReceive;
1.11 import org.apidesign.bck2brwsr.htmlpage.api.Page;
1.12 import org.apidesign.bck2brwsr.htmlpage.api.Property;
1.13 @@ -42,6 +44,7 @@
1.14 })
1.15 public class JSONTest {
1.16 private JSONik js;
1.17 + private Integer orig;
1.18
1.19 @Test public void personToString() throws JSONException {
1.20 Person p = new Person();
1.21 @@ -183,7 +186,11 @@
1.22 parameters = { "callme" }
1.23 ))
1.24 @BrwsrTest public void loadAndParseJSONP() throws InterruptedException {
1.25 +
1.26 if (js == null) {
1.27 + orig = scriptElements();
1.28 + assert orig > 0 : "There should be some scripts on the page";
1.29 +
1.30 js = new JSONik();
1.31 js.applyBindings();
1.32
1.33 @@ -197,7 +204,14 @@
1.34
1.35 assert "Mitar".equals(p.getFirstName()) : "Unexpected: " + p.getFirstName();
1.36 assert Sex.MALE.equals(p.getSex()) : "Expecting MALE: " + p.getSex();
1.37 +
1.38 + int now = scriptElements();
1.39 +
1.40 + assert orig == now : "The set of elements is unchanged. Delta: " + (now - orig);
1.41 }
1.42 +
1.43 + @JavaScriptBody(args = { }, body = "return window.document.getElementsByTagName('script').length;")
1.44 + private static native int scriptElements();
1.45
1.46 @Http(@Http.Resource(
1.47 content = "{'firstName': 'Sitar', 'sex': 'MALE'}",