Added conversion to long for JavaScript implementation of System.currentTimeMillis
1.1 --- a/emul/compact/src/test/java/org/apidesign/bck2brwsr/compact/tck/JFXIssuesTest.java Tue Feb 19 15:59:27 2013 +0100
1.2 +++ b/emul/compact/src/test/java/org/apidesign/bck2brwsr/compact/tck/JFXIssuesTest.java Mon Feb 25 19:00:08 2013 +0100
1.3 @@ -48,6 +48,13 @@
1.4 return Float.isInfinite(Float.NEGATIVE_INFINITY);
1.5 }
1.6
1.7 + @Compare public boolean areTimesEqual() {
1.8 + long l1 = System.currentTimeMillis();
1.9 + long l2 = l1 + 0;
1.10 +
1.11 + return l1 == l2;
1.12 + }
1.13 +
1.14 @Factory public static Object[] create() {
1.15 return VMTest.create(JFXIssuesTest.class);
1.16 }
2.1 --- a/emul/mini/src/main/java/org/apidesign/bck2brwsr/emul/lang/System.java Tue Feb 19 15:59:27 2013 +0100
2.2 +++ b/emul/mini/src/main/java/org/apidesign/bck2brwsr/emul/lang/System.java Mon Feb 25 19:00:08 2013 +0100
2.3 @@ -55,8 +55,12 @@
2.4 public static native byte[] expandArray(byte[] arr, int expectedSize);
2.5
2.6 @JavaScriptBody(args = {}, body = "return new Date().getTime();")
2.7 - public static native long currentTimeMillis();
2.8 -
2.9 + private static native double currentTimeMillisDouble();
2.10 +
2.11 + public static long currentTimeMillis() {
2.12 + return (long) currentTimeMillisDouble();
2.13 + }
2.14 +
2.15 public static long nanoTime() {
2.16 return 1000000L * currentTimeMillis();
2.17 }
3.1 --- a/vm/src/test/java/org/apidesign/vm4brwsr/SystemTest.java Tue Feb 19 15:59:27 2013 +0100
3.2 +++ b/vm/src/test/java/org/apidesign/vm4brwsr/SystemTest.java Mon Feb 25 19:00:08 2013 +0100
3.3 @@ -32,7 +32,7 @@
3.4 long now = System.currentTimeMillis();
3.5
3.6 Object js = code.execCode("Get js time",
3.7 - org.apidesign.bck2brwsr.emul.lang.System.class, "currentTimeMillis__J",
3.8 + org.apidesign.bck2brwsr.emul.lang.System.class, "currentTimeMillisDouble__D",
3.9 null
3.10 );
3.11