Don't convert Date objects to current time millis
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Sun, 17 Apr 2016 06:52:19 +0200
changeset 1919a064702472ec
parent 1918 17d09f3e5f08
child 1920 6cfab6c60fba
Don't convert Date objects to current time millis
rt/emul/compacttest/src/test/java/org/apidesign/bck2brwsr/vmtest/impl/HtmlAnnotations.java
rt/emul/compacttest/src/test/java/org/apidesign/bck2brwsr/vmtest/impl/HtmlAnnotationsTest.java
rt/emul/mini/src/main/java/java/lang/Class.java
     1.1 --- a/rt/emul/compacttest/src/test/java/org/apidesign/bck2brwsr/vmtest/impl/HtmlAnnotations.java	Mon Mar 28 07:33:11 2016 +0200
     1.2 +++ b/rt/emul/compacttest/src/test/java/org/apidesign/bck2brwsr/vmtest/impl/HtmlAnnotations.java	Sun Apr 17 06:52:19 2016 +0200
     1.3 @@ -86,4 +86,10 @@
     1.4          "return impl.@org.apidesign.bck2brwsr.vmtest.impl.HtmlAnnotations::getError()();"
     1.5      )
     1.6      public static native Double onError(Object impl, Double d);
     1.7 +
     1.8 +    @JavaScriptBody(args = {  }, body = "return new Date(2016, 4, 1);")
     1.9 +    public static native Object april2016();
    1.10 +
    1.11 +    @JavaScriptBody(args = { "date" }, body = "return date.getFullYear()")
    1.12 +    public static native int year(Object date);
    1.13  }
     2.1 --- a/rt/emul/compacttest/src/test/java/org/apidesign/bck2brwsr/vmtest/impl/HtmlAnnotationsTest.java	Mon Mar 28 07:33:11 2016 +0200
     2.2 +++ b/rt/emul/compacttest/src/test/java/org/apidesign/bck2brwsr/vmtest/impl/HtmlAnnotationsTest.java	Sun Apr 17 06:52:19 2016 +0200
     2.3 @@ -77,6 +77,11 @@
     2.4          String msg = invoke(fn);
     2.5          assert "*/*".equals(msg) : "String '*/*' as expected: " + msg;
     2.6      }
     2.7 +
     2.8 +    @BrwsrTest public void date() throws Exception {
     2.9 +        Object april = HtmlAnnotations.april2016();
    2.10 +        assertEquals(HtmlAnnotations.year(april), 2016);
    2.11 +    }
    2.12      
    2.13      private static void assertEquals(double real, double exp) {
    2.14          if (real - exp < 0.01) {
     3.1 --- a/rt/emul/mini/src/main/java/java/lang/Class.java	Mon Mar 28 07:33:11 2016 +0200
     3.2 +++ b/rt/emul/mini/src/main/java/java/lang/Class.java	Sun Apr 17 06:52:19 2016 +0200
     3.3 @@ -1875,6 +1875,7 @@
     3.4          + "  if (Object.prototype.toString.call(v) === '[object Array]') {\n"
     3.5          + "    return vm.org_apidesign_bck2brwsr_emul_lang_System(false).convArray__Ljava_lang_Object_2Ljava_lang_Object_2(v);\n"
     3.6          + "  }\n"
     3.7 +        + "  if (v instanceof Date) return v;\n"
     3.8          + "  return v.valueOf();\n"
     3.9          + "}\n"
    3.10      )