1.1 --- a/json-tck/src/main/java/net/java/html/js/tests/Bodies.java Mon Sep 08 17:24:35 2014 +0200
1.2 +++ b/json-tck/src/main/java/net/java/html/js/tests/Bodies.java Wed Sep 24 05:29:34 2014 +0200
1.3 @@ -162,4 +162,13 @@
1.4 "return v.x;\n"
1.5 )
1.6 static native int incAsync();
1.7 +
1.8 + @JavaScriptBody(args = { "arr" }, body =
1.9 + "var ret = [];\n" +
1.10 + "for (var i in arr) {\n" +
1.11 + " ret.push(arr[i]);\n" +
1.12 + "}\n" +
1.13 + "return ret;\n"
1.14 + )
1.15 + static native Object[] forIn(Object[] in);
1.16 }
2.1 --- a/json-tck/src/main/java/net/java/html/js/tests/JavaScriptBodyTest.java Mon Sep 08 17:24:35 2014 +0200
2.2 +++ b/json-tck/src/main/java/net/java/html/js/tests/JavaScriptBodyTest.java Wed Sep 24 05:29:34 2014 +0200
2.3 @@ -329,6 +329,16 @@
2.4 assert r == 42 : "Expecting 42: " + r;
2.5 }
2.6
2.7 + @KOTest public void iterateArray() {
2.8 + String[] arr = { "Ahoj", "Hi", "Ciao" };
2.9 + Object[] ret = Bodies.forIn(arr);
2.10 + assert ret.length == 3 : "Three elements returned: " + ret.length;
2.11 + assert ret != arr : "Different arrays";
2.12 + assert ret[0].equals("Ahoj") : "Expecting Ahoj: " + ret[0];
2.13 + assert ret[1].equals("Hi") : "Expecting Hi: " + ret[1];
2.14 + assert ret[2].equals("Ciao") : "Expecting Ciao: " + ret[2];
2.15 + }
2.16 +
2.17 Later l;
2.18 @KOTest public void callLater() throws Exception{
2.19 final Fn.Presenter p = Fn.activePresenter();