Don't append .0 when there is 'e' in the number
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Sat, 09 Mar 2013 15:29:57 +0100
changeset 82891d9fa810a43
parent 827 309878691222
child 829 0e4945540961
Don't append .0 when there is 'e' in the number
rt/emul/mini/src/main/java/java/lang/Double.java
rt/vmtest/src/test/java/org/apidesign/bck2brwsr/tck/DoubleTest.java
     1.1 --- a/rt/emul/mini/src/main/java/java/lang/Double.java	Sat Mar 09 14:12:29 2013 +0100
     1.2 +++ b/rt/emul/mini/src/main/java/java/lang/Double.java	Sat Mar 09 15:29:57 2013 +0100
     1.3 @@ -191,8 +191,9 @@
     1.4       * @return a string representation of the argument.
     1.5       */
     1.6      @JavaScriptBody(args="d", body="var f = Math.floor(d);\n" +
     1.7 -        "if (f === d && isFinite(d)) return d.toString() + '.0';\n" +
     1.8 -        "else return d.toString();"
     1.9 +        "var r = d.toString();" +
    1.10 +        "if (f === d && isFinite(d) && r.indexOf('e') === -1) return r + '.0';\n" +
    1.11 +        " else return r;"
    1.12      )
    1.13      public static native String toString(double d);
    1.14  
     2.1 --- a/rt/vmtest/src/test/java/org/apidesign/bck2brwsr/tck/DoubleTest.java	Sat Mar 09 14:12:29 2013 +0100
     2.2 +++ b/rt/vmtest/src/test/java/org/apidesign/bck2brwsr/tck/DoubleTest.java	Sat Mar 09 15:29:57 2013 +0100
     2.3 @@ -50,6 +50,10 @@
     2.4          return Double.parseDouble(toStr(Long.MIN_VALUE / 10));
     2.5      }
     2.6      
     2.7 +    @Compare public double canParseExp() {
     2.8 +        return Double.parseDouble(toStr(1.7976931348623157e+308));
     2.9 +    }
    2.10 +    
    2.11      private static String toStr(double d) {
    2.12          return Double.toString(d);
    2.13      }