Ben Murdoch | b8a8cc1 | 2014-11-26 15:28:44 +0000 | [diff] [blame^] | 1 | // Copyright 2013 the V8 project authors. All rights reserved. |
| 2 | // Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. |
| 3 | // |
| 4 | // Redistribution and use in source and binary forms, with or without |
| 5 | // modification, are permitted provided that the following conditions |
| 6 | // are met: |
| 7 | // 1. Redistributions of source code must retain the above copyright |
| 8 | // notice, this list of conditions and the following disclaimer. |
| 9 | // 2. Redistributions in binary form must reproduce the above copyright |
| 10 | // notice, this list of conditions and the following disclaimer in the |
| 11 | // documentation and/or other materials provided with the distribution. |
| 12 | // |
| 13 | // THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY |
| 14 | // EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| 15 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| 16 | // DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY |
| 17 | // DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
| 18 | // (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
| 19 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON |
| 20 | // ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| 21 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
| 22 | // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 23 | |
| 24 | description("KDE JS Test"); |
| 25 | shouldBe("Number()", "0"); |
| 26 | shouldBe("Number(1)", "1"); |
| 27 | shouldBe("Number(1.1)", "1.1"); |
| 28 | shouldBe("Number('1.2')", "1.2"); |
| 29 | shouldBe("isNaN(Number('a'))", "true"); |
| 30 | |
| 31 | shouldBe("(new Number()).valueOf()", "0"); |
| 32 | shouldBe("(new Number(.4)).valueOf()", "0.4"); |
| 33 | shouldBe("(new Number('1.')).valueOf()", "1"); |
| 34 | shouldBe("isNaN(new Number('a'))", "true"); |
| 35 | |
| 36 | shouldBe("isNaN(Number.NaN)", "true"); |
| 37 | shouldBe("Number.NEGATIVE_INFINITY", "-Infinity"); |
| 38 | shouldBe("Number.POSITIVE_INFINITY", "Infinity"); |
| 39 | |
| 40 | shouldBe("(1).toString()", "'1'"); |
| 41 | shouldBe("typeof (1).toString()", "'string'"); |
| 42 | shouldBe("(10).toString(16)", "'a'"); |
| 43 | shouldBe("(8.5).toString(16)", "'8.8'"); |
| 44 | shouldBe("(-8.5).toString(16)", "'-8.8'"); |
| 45 | shouldBe("Number.NaN.toString(16)", "'NaN'"); |
| 46 | shouldBe("Number.POSITIVE_INFINITY.toString(16)", "'Infinity'"); |
| 47 | shouldBe("Number.NEGATIVE_INFINITY.toString(16)", "'-Infinity'"); |
| 48 | shouldBe("Number.MAX_VALUE.toString(2).length", "1024"); |
| 49 | shouldBe("(1).valueOf()", "1"); |
| 50 | shouldBe("typeof (1).valueOf()", "'number'"); |
| 51 | |
| 52 | function toFixedOrException(val,fractionDigits) |
| 53 | { |
| 54 | var s = ""; |
| 55 | try { |
| 56 | s = String(Number(val).toFixed(fractionDigits)); |
| 57 | } |
| 58 | catch (e) { |
| 59 | s = String(e); |
| 60 | } |
| 61 | return s; |
| 62 | } |
| 63 | |
| 64 | shouldBe("Number(1234.567).toFixed(0)","\"1235\""); |
| 65 | shouldBe("Number(1234.567).toFixed(undefined)","\"1235\""); |
| 66 | shouldBe("Number(-1234.567).toFixed(0)","\"-1235\""); |
| 67 | shouldBe("Number(-1234.567).toFixed(undefined)","\"-1235\""); |
| 68 | shouldBe("Number(0).toFixed(7)","\"0.0000000\""); |
| 69 | shouldBe("Number(0.003).toFixed(0)","\"0\""); |
| 70 | shouldBe("Number(-0.003).toFixed(0)","\"-0\""); |
| 71 | shouldBe("Number(40.1234567890123).toFixed(7)","\"40.1234568\""); |
| 72 | shouldBe("Number(-40.1234567890123).toFixed(7)","\"-40.1234568\""); |
| 73 | shouldBe("Number(4).toFixed(7)","\"4.0000000\""); |
| 74 | shouldBe("Number(-4).toFixed(7)","\"-4.0000000\""); |
| 75 | shouldBe("Number(0.000056).toFixed(7)","\"0.0000560\""); |
| 76 | shouldBe("Number(-0.000056).toFixed(7)","\"-0.0000560\""); |
| 77 | shouldBe("Number(NaN).toFixed(7)","\"NaN\""); |
| 78 | shouldBe("Number(Infinity).toFixed(7)","\"Infinity\""); |
| 79 | shouldBe("Number(-Infinity).toFixed(7)","\"-Infinity\""); |
| 80 | shouldBe("Number(Math.pow(10,4)).toFixed(13)","\"10000.0000000000000\""); |
| 81 | shouldBe("Number(Math.pow(10,17)).toFixed(16)","\"100000000000000000.0000000000000000\""); |
| 82 | shouldBe("Number(Math.pow(10,18)).toFixed(17)","\"1000000000000000000.00000000000000000\""); |
| 83 | shouldBe("Number(Math.pow(10,19)).toFixed(18)","\"10000000000000000000.000000000000000000\""); |
| 84 | shouldBe("Number(Math.pow(10,17)).toFixed(20)","\"100000000000000000.00000000000000000000\""); |
| 85 | shouldBe("Number(Math.pow(10,18)).toFixed(20)","\"1000000000000000000.00000000000000000000\""); |
| 86 | shouldBe("Number(Math.pow(10,19)).toFixed(20)","\"10000000000000000000.00000000000000000000\""); |
| 87 | shouldBe("Number(Math.pow(10,20)).toFixed(20)","\"100000000000000000000.00000000000000000000\""); |
| 88 | shouldBe("Number(Math.pow(10,21)).toFixed(20)","\"1e+21\""); |
| 89 | shouldBe("Number(-Math.pow(10,4)).toFixed(13)","\"-10000.0000000000000\""); |
| 90 | shouldBe("Number(-Math.pow(10,17)).toFixed(16)","\"-100000000000000000.0000000000000000\""); |
| 91 | shouldBe("Number(-Math.pow(10,18)).toFixed(17)","\"-1000000000000000000.00000000000000000\""); |
| 92 | shouldBe("Number(-Math.pow(10,19)).toFixed(18)","\"-10000000000000000000.000000000000000000\""); |
| 93 | shouldBe("Number(-Math.pow(10,17)).toFixed(20)","\"-100000000000000000.00000000000000000000\""); |
| 94 | shouldBe("Number(-Math.pow(10,18)).toFixed(20)","\"-1000000000000000000.00000000000000000000\""); |
| 95 | shouldBe("Number(-Math.pow(10,19)).toFixed(20)","\"-10000000000000000000.00000000000000000000\""); |
| 96 | shouldBe("Number(-Math.pow(10,20)).toFixed(20)","\"-100000000000000000000.00000000000000000000\""); |
| 97 | shouldBe("Number(-Math.pow(10,21)).toFixed(20)","\"-1e+21\""); |
| 98 | shouldBeTrue("toFixedOrException(2,-1).indexOf('Range') >= 0"); |
| 99 | shouldBe("Number(2).toFixed(0)","\"2\""); |
| 100 | shouldBe("Number(2).toFixed(20)","\"2.00000000000000000000\""); |
| 101 | shouldBeTrue("toFixedOrException(2,21).indexOf('Range') >= 0"); |
| 102 | shouldBeTrue("toFixedOrException(-2,-1).indexOf('Range') >= 0"); |
| 103 | shouldBe("Number(-2).toFixed(0)","\"-2\""); |
| 104 | shouldBe("Number(-2).toFixed(20)","\"-2.00000000000000000000\""); |
| 105 | shouldBeTrue("toFixedOrException(-2,21).indexOf('Range') >= 0"); |
| 106 | |
| 107 | |
| 108 | |
| 109 | |
| 110 | shouldBe("Number(NaN).toExponential()","\"NaN\""); |
| 111 | shouldBe("Number(Infinity).toExponential()","\"Infinity\""); |
| 112 | shouldBe("Number(-Infinity).toExponential()","\"-Infinity\""); |
| 113 | shouldBe("Number(NaN).toExponential(4)","\"NaN\""); |
| 114 | shouldBe("Number(Infinity).toExponential(4)","\"Infinity\""); |
| 115 | shouldBe("Number(-Infinity).toExponential(4)","\"-Infinity\""); |
| 116 | shouldBe("Number(123.456).toExponential()","\"1.23456e+2\""); |
| 117 | shouldBeTrue("try { Number(123.456).toExponential(-1) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 118 | shouldBe("Number(123.456).toExponential(0)","\"1e+2\""); |
| 119 | shouldBe("Number(123.456).toExponential(1)","\"1.2e+2\""); |
| 120 | shouldBe("Number(123.456).toExponential(2)","\"1.23e+2\""); |
| 121 | shouldBe("Number(123.456).toExponential(3)","\"1.235e+2\""); |
| 122 | shouldBe("Number(123.456).toExponential(4)","\"1.2346e+2\""); |
| 123 | shouldBe("Number(123.456).toExponential(5)","\"1.23456e+2\""); |
| 124 | shouldBe("Number(123.456).toExponential(6)","\"1.234560e+2\""); |
| 125 | shouldBe("Number(123.456).toExponential(7)","\"1.2345600e+2\""); |
| 126 | shouldBe("Number(123.456).toExponential(8)","\"1.23456000e+2\""); |
| 127 | shouldBe("Number(123.456).toExponential(9)","\"1.234560000e+2\""); |
| 128 | shouldBe("Number(123.456).toExponential(10)","\"1.2345600000e+2\""); |
| 129 | shouldBe("Number(123.456).toExponential(11)","\"1.23456000000e+2\""); |
| 130 | shouldBe("Number(123.456).toExponential(12)","\"1.234560000000e+2\""); |
| 131 | shouldBe("Number(123.456).toExponential(13)","\"1.2345600000000e+2\""); |
| 132 | shouldBe("Number(123.456).toExponential(14)","\"1.23456000000000e+2\""); |
| 133 | shouldBe("Number(123.456).toExponential(15)","\"1.234560000000000e+2\""); |
| 134 | shouldBe("Number(123.456).toExponential(16)","\"1.2345600000000000e+2\""); |
| 135 | shouldBe("Number(123.456).toExponential(17)","\"1.23456000000000003e+2\""); |
| 136 | shouldBe("Number(123.456).toExponential(18)","\"1.234560000000000031e+2\""); |
| 137 | shouldBe("Number(123.456).toExponential(19)","\"1.2345600000000000307e+2\""); |
| 138 | shouldBe("Number(123.456).toExponential(20)","\"1.23456000000000003070e+2\""); |
| 139 | shouldBeTrue("try { Number(123.456).toExponential(21) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 140 | shouldBe("Number(-123.456).toExponential()","\"-1.23456e+2\""); |
| 141 | shouldBeTrue("try { Number(-123.456).toExponential(-1) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 142 | shouldBe("Number(-123.456).toExponential(0)","\"-1e+2\""); |
| 143 | shouldBe("Number(-123.456).toExponential(1)","\"-1.2e+2\""); |
| 144 | shouldBe("Number(-123.456).toExponential(2)","\"-1.23e+2\""); |
| 145 | shouldBe("Number(-123.456).toExponential(3)","\"-1.235e+2\""); |
| 146 | shouldBe("Number(-123.456).toExponential(4)","\"-1.2346e+2\""); |
| 147 | shouldBe("Number(-123.456).toExponential(5)","\"-1.23456e+2\""); |
| 148 | shouldBe("Number(-123.456).toExponential(6)","\"-1.234560e+2\""); |
| 149 | shouldBe("Number(-123.456).toExponential(7)","\"-1.2345600e+2\""); |
| 150 | shouldBe("Number(-123.456).toExponential(8)","\"-1.23456000e+2\""); |
| 151 | shouldBe("Number(-123.456).toExponential(9)","\"-1.234560000e+2\""); |
| 152 | shouldBe("Number(-123.456).toExponential(10)","\"-1.2345600000e+2\""); |
| 153 | shouldBe("Number(-123.456).toExponential(11)","\"-1.23456000000e+2\""); |
| 154 | shouldBe("Number(-123.456).toExponential(12)","\"-1.234560000000e+2\""); |
| 155 | shouldBe("Number(-123.456).toExponential(13)","\"-1.2345600000000e+2\""); |
| 156 | shouldBe("Number(-123.456).toExponential(14)","\"-1.23456000000000e+2\""); |
| 157 | shouldBe("Number(-123.456).toExponential(15)","\"-1.234560000000000e+2\""); |
| 158 | shouldBe("Number(-123.456).toExponential(16)","\"-1.2345600000000000e+2\""); |
| 159 | shouldBe("Number(-123.456).toExponential(17)","\"-1.23456000000000003e+2\""); |
| 160 | shouldBe("Number(-123.456).toExponential(18)","\"-1.234560000000000031e+2\""); |
| 161 | shouldBe("Number(-123.456).toExponential(19)","\"-1.2345600000000000307e+2\""); |
| 162 | shouldBe("Number(-123.456).toExponential(20)","\"-1.23456000000000003070e+2\""); |
| 163 | shouldBeTrue("try { Number(-123.456).toExponential(21) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 164 | shouldBe("Number(.000123456).toExponential()","\"1.23456e-4\""); |
| 165 | shouldBeTrue("try { Number(.000123456).toExponential(-1) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 166 | shouldBe("Number(.000123456).toExponential(0)","\"1e-4\""); |
| 167 | shouldBe("Number(.000123456).toExponential(1)","\"1.2e-4\""); |
| 168 | shouldBe("Number(.000123456).toExponential(2)","\"1.23e-4\""); |
| 169 | shouldBe("Number(.000123456).toExponential(3)","\"1.235e-4\""); |
| 170 | shouldBe("Number(.000123456).toExponential(4)","\"1.2346e-4\""); |
| 171 | shouldBe("Number(.000123456).toExponential(5)","\"1.23456e-4\""); |
| 172 | shouldBe("Number(.000123456).toExponential(6)","\"1.234560e-4\""); |
| 173 | shouldBe("Number(.000123456).toExponential(7)","\"1.2345600e-4\""); |
| 174 | shouldBe("Number(.000123456).toExponential(8)","\"1.23456000e-4\""); |
| 175 | shouldBe("Number(.000123456).toExponential(9)","\"1.234560000e-4\""); |
| 176 | shouldBe("Number(.000123456).toExponential(10)","\"1.2345600000e-4\""); |
| 177 | shouldBe("Number(.000123456).toExponential(11)","\"1.23456000000e-4\""); |
| 178 | shouldBe("Number(.000123456).toExponential(12)","\"1.234560000000e-4\""); |
| 179 | shouldBe("Number(.000123456).toExponential(13)","\"1.2345600000000e-4\""); |
| 180 | shouldBe("Number(.000123456).toExponential(14)","\"1.23456000000000e-4\""); |
| 181 | shouldBe("Number(.000123456).toExponential(15)","\"1.234560000000000e-4\""); |
| 182 | shouldBe("Number(.000123456).toExponential(16)","\"1.2345600000000001e-4\""); |
| 183 | shouldBe("Number(.000123456).toExponential(17)","\"1.23456000000000005e-4\""); |
| 184 | shouldBe("Number(.000123456).toExponential(18)","\"1.234560000000000052e-4\""); |
| 185 | shouldBe("Number(.000123456).toExponential(19)","\"1.2345600000000000519e-4\""); |
| 186 | shouldBe("Number(.000123456).toExponential(20)","\"1.23456000000000005188e-4\""); |
| 187 | shouldBeTrue("try { Number(.000123456).toExponential(21) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 188 | shouldBe("Number(-.000123456).toExponential()","\"-1.23456e-4\""); |
| 189 | shouldBeTrue("try { Number(-.000123456).toExponential(-1) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 190 | shouldBe("Number(-.000123456).toExponential(0)","\"-1e-4\""); |
| 191 | shouldBe("Number(-.000123456).toExponential(1)","\"-1.2e-4\""); |
| 192 | shouldBe("Number(-.000123456).toExponential(2)","\"-1.23e-4\""); |
| 193 | shouldBe("Number(-.000123456).toExponential(3)","\"-1.235e-4\""); |
| 194 | shouldBe("Number(-.000123456).toExponential(4)","\"-1.2346e-4\""); |
| 195 | shouldBe("Number(-.000123456).toExponential(5)","\"-1.23456e-4\""); |
| 196 | shouldBe("Number(-.000123456).toExponential(6)","\"-1.234560e-4\""); |
| 197 | shouldBe("Number(-.000123456).toExponential(7)","\"-1.2345600e-4\""); |
| 198 | shouldBe("Number(-.000123456).toExponential(8)","\"-1.23456000e-4\""); |
| 199 | shouldBe("Number(-.000123456).toExponential(9)","\"-1.234560000e-4\""); |
| 200 | shouldBe("Number(-.000123456).toExponential(10)","\"-1.2345600000e-4\""); |
| 201 | shouldBe("Number(-.000123456).toExponential(11)","\"-1.23456000000e-4\""); |
| 202 | shouldBe("Number(-.000123456).toExponential(12)","\"-1.234560000000e-4\""); |
| 203 | shouldBe("Number(-.000123456).toExponential(13)","\"-1.2345600000000e-4\""); |
| 204 | shouldBe("Number(-.000123456).toExponential(14)","\"-1.23456000000000e-4\""); |
| 205 | shouldBe("Number(-.000123456).toExponential(15)","\"-1.234560000000000e-4\""); |
| 206 | shouldBe("Number(-.000123456).toExponential(16)","\"-1.2345600000000001e-4\""); |
| 207 | shouldBe("Number(-.000123456).toExponential(17)","\"-1.23456000000000005e-4\""); |
| 208 | shouldBe("Number(-.000123456).toExponential(18)","\"-1.234560000000000052e-4\""); |
| 209 | shouldBe("Number(-.000123456).toExponential(19)","\"-1.2345600000000000519e-4\""); |
| 210 | shouldBe("Number(-.000123456).toExponential(20)","\"-1.23456000000000005188e-4\""); |
| 211 | shouldBeTrue("try { Number(-.000123456).toExponential(21) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 212 | shouldBe("Number(123.4567890123456789012).toExponential()","\"1.2345678901234568e+2\""); |
| 213 | shouldBeTrue("try { Number(123.4567890123456789012).toExponential(-1) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 214 | shouldBe("Number(123.4567890123456789012).toExponential(0)","\"1e+2\""); |
| 215 | shouldBe("Number(123.4567890123456789012).toExponential(1)","\"1.2e+2\""); |
| 216 | shouldBe("Number(123.4567890123456789012).toExponential(2)","\"1.23e+2\""); |
| 217 | shouldBe("Number(123.4567890123456789012).toExponential(3)","\"1.235e+2\""); |
| 218 | shouldBe("Number(123.4567890123456789012).toExponential(4)","\"1.2346e+2\""); |
| 219 | shouldBe("Number(123.4567890123456789012).toExponential(5)","\"1.23457e+2\""); |
| 220 | shouldBe("Number(123.4567890123456789012).toExponential(6)","\"1.234568e+2\""); |
| 221 | shouldBe("Number(123.4567890123456789012).toExponential(7)","\"1.2345679e+2\""); |
| 222 | shouldBe("Number(123.4567890123456789012).toExponential(8)","\"1.23456789e+2\""); |
| 223 | shouldBe("Number(123.4567890123456789012).toExponential(9)","\"1.234567890e+2\""); |
| 224 | shouldBe("Number(123.4567890123456789012).toExponential(10)","\"1.2345678901e+2\""); |
| 225 | shouldBe("Number(123.4567890123456789012).toExponential(11)","\"1.23456789012e+2\""); |
| 226 | shouldBe("Number(123.4567890123456789012).toExponential(12)","\"1.234567890123e+2\""); |
| 227 | shouldBe("Number(123.4567890123456789012).toExponential(13)","\"1.2345678901235e+2\""); |
| 228 | shouldBe("Number(123.4567890123456789012).toExponential(14)","\"1.23456789012346e+2\""); |
| 229 | shouldBe("Number(123.4567890123456789012).toExponential(15)","\"1.234567890123457e+2\""); |
| 230 | shouldBe("Number(123.4567890123456789012).toExponential(16)","\"1.2345678901234568e+2\""); |
| 231 | shouldBe("Number(123.4567890123456789012).toExponential(17)","\"1.23456789012345681e+2\""); |
| 232 | shouldBe("Number(123.4567890123456789012).toExponential(18)","\"1.234567890123456806e+2\""); |
| 233 | shouldBe("Number(123.4567890123456789012).toExponential(19)","\"1.2345678901234568059e+2\""); |
| 234 | shouldBe("Number(123.4567890123456789012).toExponential(20)","\"1.23456789012345680590e+2\""); |
| 235 | shouldBeTrue("try { Number(123.4567890123456789012).toExponential(21) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 236 | shouldBe("Number(-123.4567890123456789012).toExponential()","\"-1.2345678901234568e+2\""); |
| 237 | shouldBeTrue("try { Number(-123.4567890123456789012).toExponential(-1) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 238 | shouldBe("Number(-123.4567890123456789012).toExponential(0)","\"-1e+2\""); |
| 239 | shouldBe("Number(-123.4567890123456789012).toExponential(1)","\"-1.2e+2\""); |
| 240 | shouldBe("Number(-123.4567890123456789012).toExponential(2)","\"-1.23e+2\""); |
| 241 | shouldBe("Number(-123.4567890123456789012).toExponential(3)","\"-1.235e+2\""); |
| 242 | shouldBe("Number(-123.4567890123456789012).toExponential(4)","\"-1.2346e+2\""); |
| 243 | shouldBe("Number(-123.4567890123456789012).toExponential(5)","\"-1.23457e+2\""); |
| 244 | shouldBe("Number(-123.4567890123456789012).toExponential(6)","\"-1.234568e+2\""); |
| 245 | shouldBe("Number(-123.4567890123456789012).toExponential(7)","\"-1.2345679e+2\""); |
| 246 | shouldBe("Number(-123.4567890123456789012).toExponential(8)","\"-1.23456789e+2\""); |
| 247 | shouldBe("Number(-123.4567890123456789012).toExponential(9)","\"-1.234567890e+2\""); |
| 248 | shouldBe("Number(-123.4567890123456789012).toExponential(10)","\"-1.2345678901e+2\""); |
| 249 | shouldBe("Number(-123.4567890123456789012).toExponential(11)","\"-1.23456789012e+2\""); |
| 250 | shouldBe("Number(-123.4567890123456789012).toExponential(12)","\"-1.234567890123e+2\""); |
| 251 | shouldBe("Number(-123.4567890123456789012).toExponential(13)","\"-1.2345678901235e+2\""); |
| 252 | shouldBe("Number(-123.4567890123456789012).toExponential(14)","\"-1.23456789012346e+2\""); |
| 253 | shouldBe("Number(-123.4567890123456789012).toExponential(15)","\"-1.234567890123457e+2\""); |
| 254 | shouldBe("Number(-123.4567890123456789012).toExponential(16)","\"-1.2345678901234568e+2\""); |
| 255 | shouldBe("Number(-123.4567890123456789012).toExponential(17)","\"-1.23456789012345681e+2\""); |
| 256 | shouldBe("Number(-123.4567890123456789012).toExponential(18)","\"-1.234567890123456806e+2\""); |
| 257 | shouldBe("Number(-123.4567890123456789012).toExponential(19)","\"-1.2345678901234568059e+2\""); |
| 258 | shouldBe("Number(-123.4567890123456789012).toExponential(20)","\"-1.23456789012345680590e+2\""); |
| 259 | shouldBeTrue("try { Number(-123.4567890123456789012).toExponential(21) } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 260 | shouldBe("Number(.0000000000000000000001).toExponential()","\"1e-22\""); |
| 261 | shouldBe("Number(.0000000000000000000012).toExponential()","\"1.2e-21\""); |
| 262 | shouldBe("Number(.0000000000000000000123).toExponential()","\"1.23e-20\""); |
| 263 | shouldBe("Number(.0000000000000000000123).toExponential()","\"1.23e-20\""); |
| 264 | shouldBe("Number(.0000000000000000001234).toExponential()","\"1.234e-19\""); |
| 265 | shouldBe("Number(.0000000000000000012345).toExponential()","\"1.2345e-18\""); |
| 266 | shouldBe("Number(.0000000000000000123456).toExponential()","\"1.23456e-17\""); |
| 267 | shouldBe("Number(.0000000000000001234567).toExponential()","\"1.234567e-16\""); |
| 268 | shouldBe("Number(.0000000000000012345678).toExponential()","\"1.2345678e-15\""); |
| 269 | shouldBe("Number(.0000000000000123456789).toExponential()","\"1.23456789e-14\""); |
| 270 | shouldBe("Number(.0000000000001234567890).toExponential()","\"1.23456789e-13\""); |
| 271 | shouldBe("Number(.0000000000012345678901).toExponential()","\"1.2345678901e-12\""); |
| 272 | shouldBe("Number(.0000000000123456789012).toExponential()","\"1.23456789012e-11\""); |
| 273 | shouldBe("Number(.0000000001234567890123).toExponential()","\"1.234567890123e-10\""); |
| 274 | shouldBe("Number(.0000000012345678901234).toExponential()","\"1.2345678901234e-9\""); |
| 275 | shouldBe("Number(.0000000123456789012345).toExponential()","\"1.23456789012345e-8\""); |
| 276 | shouldBe("Number(.0000001234567890123456).toExponential()","\"1.234567890123456e-7\""); |
| 277 | shouldBe("Number(.0000012345678901234567).toExponential()","\"1.2345678901234567e-6\""); |
| 278 | shouldBe("Number(.0000123456789012345678).toExponential()","\"1.2345678901234568e-5\""); |
| 279 | shouldBe("Number(.0001234567890123456789).toExponential()","\"1.2345678901234567e-4\""); |
| 280 | shouldBe("Number(.0012345678901234567890).toExponential()","\"1.2345678901234567e-3\""); |
| 281 | shouldBe("Number(.0123456789012345678901).toExponential()","\"1.2345678901234568e-2\""); |
| 282 | shouldBe("Number(1.234567890123456789012).toExponential()","\"1.2345678901234567e+0\""); |
| 283 | shouldBe("Number(12.34567890123456789012).toExponential()","\"1.2345678901234567e+1\""); |
| 284 | shouldBe("Number(123.4567890123456789012).toExponential()","\"1.2345678901234568e+2\""); |
| 285 | shouldBe("Number(1234.567890123456789012).toExponential()","\"1.234567890123457e+3\""); |
| 286 | shouldBe("Number(12345.67890123456789012).toExponential()","\"1.2345678901234567e+4\""); |
| 287 | shouldBe("Number(123456.7890123456789012).toExponential()","\"1.2345678901234567e+5\""); |
| 288 | shouldBe("Number(1234567.890123456789012).toExponential()","\"1.2345678901234567e+6\""); |
| 289 | shouldBe("Number(12345678.90123456789012).toExponential()","\"1.2345678901234567e+7\""); |
| 290 | shouldBe("Number(123456789.0123456789012).toExponential()","\"1.2345678901234567e+8\""); |
| 291 | shouldBe("Number(1234567890.123456789012).toExponential()","\"1.2345678901234567e+9\""); |
| 292 | shouldBe("Number(12345678901.23456789012).toExponential()","\"1.2345678901234568e+10\""); |
| 293 | shouldBe("Number(123456789012.3456789012).toExponential()","\"1.2345678901234567e+11\""); |
| 294 | shouldBe("Number(1234567890123.456789012).toExponential()","\"1.2345678901234568e+12\""); |
| 295 | shouldBe("Number(12345678901234.56789012).toExponential()","\"1.2345678901234568e+13\""); |
| 296 | shouldBe("Number(123456789012345.6789012).toExponential()","\"1.2345678901234567e+14\""); |
| 297 | shouldBe("Number(1234567890123456.789012).toExponential()","\"1.2345678901234568e+15\""); |
| 298 | shouldBe("Number(12345678901234567.89012).toExponential()","\"1.2345678901234568e+16\""); |
| 299 | shouldBe("Number(123456789012345678.9012).toExponential()","\"1.2345678901234568e+17\""); |
| 300 | shouldBe("Number(1234567890123456789.012).toExponential()","\"1.2345678901234568e+18\""); |
| 301 | shouldBe("Number(12345678901234567890.12).toExponential()","\"1.2345678901234567e+19\""); |
| 302 | shouldBe("Number(123456789012345678901.2).toExponential()","\"1.2345678901234568e+20\""); |
| 303 | shouldBe("Number(-.0000000000000000000001).toExponential()","\"-1e-22\""); |
| 304 | shouldBe("Number(-.0000000000000000000012).toExponential()","\"-1.2e-21\""); |
| 305 | shouldBe("Number(-.0000000000000000000123).toExponential()","\"-1.23e-20\""); |
| 306 | shouldBe("Number(-.0000000000000000000123).toExponential()","\"-1.23e-20\""); |
| 307 | shouldBe("Number(-.0000000000000000001234).toExponential()","\"-1.234e-19\""); |
| 308 | shouldBe("Number(-.0000000000000000012345).toExponential()","\"-1.2345e-18\""); |
| 309 | shouldBe("Number(-.0000000000000000123456).toExponential()","\"-1.23456e-17\""); |
| 310 | shouldBe("Number(-.0000000000000001234567).toExponential()","\"-1.234567e-16\""); |
| 311 | shouldBe("Number(-.0000000000000012345678).toExponential()","\"-1.2345678e-15\""); |
| 312 | shouldBe("Number(-.0000000000000123456789).toExponential()","\"-1.23456789e-14\""); |
| 313 | shouldBe("Number(-.0000000000001234567890).toExponential()","\"-1.23456789e-13\""); |
| 314 | shouldBe("Number(-.0000000000012345678901).toExponential()","\"-1.2345678901e-12\""); |
| 315 | shouldBe("Number(-.0000000000123456789012).toExponential()","\"-1.23456789012e-11\""); |
| 316 | shouldBe("Number(-.0000000001234567890123).toExponential()","\"-1.234567890123e-10\""); |
| 317 | shouldBe("Number(-.0000000012345678901234).toExponential()","\"-1.2345678901234e-9\""); |
| 318 | shouldBe("Number(-.0000000123456789012345).toExponential()","\"-1.23456789012345e-8\""); |
| 319 | shouldBe("Number(-.0000001234567890123456).toExponential()","\"-1.234567890123456e-7\""); |
| 320 | shouldBe("Number(-.0000012345678901234567).toExponential()","\"-1.2345678901234567e-6\""); |
| 321 | shouldBe("Number(-.0000123456789012345678).toExponential()","\"-1.2345678901234568e-5\""); |
| 322 | shouldBe("Number(-.0001234567890123456789).toExponential()","\"-1.2345678901234567e-4\""); |
| 323 | shouldBe("Number(-.0012345678901234567890).toExponential()","\"-1.2345678901234567e-3\""); |
| 324 | shouldBe("Number(-.0123456789012345678901).toExponential()","\"-1.2345678901234568e-2\""); |
| 325 | shouldBe("Number(-1.234567890123456789012).toExponential()","\"-1.2345678901234567e+0\""); |
| 326 | shouldBe("Number(-12.34567890123456789012).toExponential()","\"-1.2345678901234567e+1\""); |
| 327 | shouldBe("Number(-123.4567890123456789012).toExponential()","\"-1.2345678901234568e+2\""); |
| 328 | shouldBe("Number(-1234.567890123456789012).toExponential()","\"-1.234567890123457e+3\""); |
| 329 | shouldBe("Number(-12345.67890123456789012).toExponential()","\"-1.2345678901234567e+4\""); |
| 330 | shouldBe("Number(-123456.7890123456789012).toExponential()","\"-1.2345678901234567e+5\""); |
| 331 | shouldBe("Number(-1234567.890123456789012).toExponential()","\"-1.2345678901234567e+6\""); |
| 332 | shouldBe("Number(-12345678.90123456789012).toExponential()","\"-1.2345678901234567e+7\""); |
| 333 | shouldBe("Number(-123456789.0123456789012).toExponential()","\"-1.2345678901234567e+8\""); |
| 334 | shouldBe("Number(-1234567890.123456789012).toExponential()","\"-1.2345678901234567e+9\""); |
| 335 | shouldBe("Number(-12345678901.23456789012).toExponential()","\"-1.2345678901234568e+10\""); |
| 336 | shouldBe("Number(-123456789012.3456789012).toExponential()","\"-1.2345678901234567e+11\""); |
| 337 | shouldBe("Number(-1234567890123.456789012).toExponential()","\"-1.2345678901234568e+12\""); |
| 338 | shouldBe("Number(-12345678901234.56789012).toExponential()","\"-1.2345678901234568e+13\""); |
| 339 | shouldBe("Number(-123456789012345.6789012).toExponential()","\"-1.2345678901234567e+14\""); |
| 340 | shouldBe("Number(-1234567890123456.789012).toExponential()","\"-1.2345678901234568e+15\""); |
| 341 | shouldBe("Number(-12345678901234567.89012).toExponential()","\"-1.2345678901234568e+16\""); |
| 342 | shouldBe("Number(-123456789012345678.9012).toExponential()","\"-1.2345678901234568e+17\""); |
| 343 | shouldBe("Number(-1234567890123456789.012).toExponential()","\"-1.2345678901234568e+18\""); |
| 344 | shouldBe("Number(-12345678901234567890.12).toExponential()","\"-1.2345678901234567e+19\""); |
| 345 | shouldBe("Number(-123456789012345678901.2).toExponential()","\"-1.2345678901234568e+20\""); |
| 346 | |
| 347 | shouldBeTrue("try { Number(1).toPrecision(-1); } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 348 | shouldBeTrue("try { Number(1).toPrecision(0); } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 349 | shouldBe("try { Number(1).toPrecision(1); } catch (e) { String(e); }","\"1\""); |
| 350 | shouldBe("try { Number(1).toPrecision(21); } catch (e) { String(e); }","\"1.00000000000000000000\""); |
| 351 | shouldBeTrue("try { Number(1).toPrecision(22); } catch (e) { String(e).indexOf('Range') >= 0; }"); |
| 352 | shouldBe("Number(NaN).toPrecision()","\"NaN\""); |
| 353 | shouldBe("Number(NaN).toPrecision(1)","\"NaN\""); |
| 354 | shouldBe("Number(Infinity).toPrecision()","\"Infinity\""); |
| 355 | shouldBe("Number(Infinity).toPrecision(1)","\"Infinity\""); |
| 356 | shouldBe("Number(-Infinity).toPrecision()","\"-Infinity\""); |
| 357 | shouldBe("Number(-Infinity).toPrecision(1)","\"-Infinity\""); |
| 358 | shouldBe("Number(.0000000012345).toPrecision(2)","\"1.2e-9\""); |
| 359 | shouldBe("Number(.000000012345).toPrecision(2)","\"1.2e-8\""); |
| 360 | shouldBe("Number(.00000012345).toPrecision(2)","\"1.2e-7\""); |
| 361 | shouldBe("Number(.0000012345).toPrecision(2)","\"0.0000012\""); |
| 362 | shouldBe("Number(.000012345).toPrecision(2)","\"0.000012\""); |
| 363 | shouldBe("Number(.00012345).toPrecision(2)","\"0.00012\""); |
| 364 | shouldBe("Number(.0012345).toPrecision(2)","\"0.0012\""); |
| 365 | shouldBe("Number(.012345).toPrecision(2)","\"0.012\""); |
| 366 | shouldBe("Number(.12345).toPrecision(2)","\"0.12\""); |
| 367 | shouldBe("Number(1.2345).toPrecision(2)","\"1.2\""); |
| 368 | shouldBe("Number(12.345).toPrecision(2)","\"12\""); |
| 369 | shouldBe("Number(123.45).toPrecision(2)","\"1.2e+2\""); |
| 370 | shouldBe("Number(1234.5).toPrecision(2)","\"1.2e+3\""); |
| 371 | shouldBe("Number(12345).toPrecision(2)","\"1.2e+4\""); |
| 372 | shouldBe("Number(12345.67).toPrecision(4)","\"1.235e+4\""); |
| 373 | shouldBe("Number(12344.67).toPrecision(4)","\"1.234e+4\""); |
| 374 | shouldBe("Number(0.0001234567890123456789012345).toPrecision()","\"0.00012345678901234567\""); |
| 375 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(1)","\"0.0001\""); |
| 376 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(2)","\"0.00012\""); |
| 377 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(3)","\"0.000123\""); |
| 378 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(4)","\"0.0001235\""); |
| 379 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(5)","\"0.00012346\""); |
| 380 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(6)","\"0.000123457\""); |
| 381 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(7)","\"0.0001234568\""); |
| 382 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(8)","\"0.00012345679\""); |
| 383 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(9)","\"0.000123456789\""); |
| 384 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(10)","\"0.0001234567890\""); |
| 385 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(11)","\"0.00012345678901\""); |
| 386 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(12)","\"0.000123456789012\""); |
| 387 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(13)","\"0.0001234567890123\""); |
| 388 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(14)","\"0.00012345678901235\""); |
| 389 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(15)","\"0.000123456789012346\""); |
| 390 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(16)","\"0.0001234567890123457\""); |
| 391 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(17)","\"0.00012345678901234567\""); |
| 392 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(18)","\"0.000123456789012345671\""); |
| 393 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(19)","\"0.0001234567890123456713\""); |
| 394 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(20)","\"0.00012345678901234567130\""); |
| 395 | shouldBe("Number(0.0001234567890123456789012345).toPrecision(21)","\"0.000123456789012345671298\""); |
| 396 | shouldBe("Number(12345.67890123456789012345).toPrecision()","\"12345.678901234567\""); |
| 397 | shouldBe("Number(12345.67890123456789012345).toPrecision(1)","\"1e+4\""); |
| 398 | shouldBe("Number(12345.67890123456789012345).toPrecision(2)","\"1.2e+4\""); |
| 399 | shouldBe("Number(12345.67890123456789012345).toPrecision(3)","\"1.23e+4\""); |
| 400 | shouldBe("Number(12345.67890123456789012345).toPrecision(4)","\"1.235e+4\""); |
| 401 | shouldBe("Number(12345.67890123456789012345).toPrecision(5)","\"12346\""); |
| 402 | shouldBe("Number(12345.67890123456789012345).toPrecision(6)","\"12345.7\""); |
| 403 | shouldBe("Number(12345.67890123456789012345).toPrecision(7)","\"12345.68\""); |
| 404 | shouldBe("Number(12345.67890123456789012345).toPrecision(8)","\"12345.679\""); |
| 405 | shouldBe("Number(12345.67890123456789012345).toPrecision(9)","\"12345.6789\""); |
| 406 | shouldBe("Number(12345.67890123456789012345).toPrecision(10)","\"12345.67890\""); |
| 407 | shouldBe("Number(12345.67890123456789012345).toPrecision(11)","\"12345.678901\""); |
| 408 | shouldBe("Number(12345.67890123456789012345).toPrecision(12)","\"12345.6789012\""); |
| 409 | shouldBe("Number(12345.67890123456789012345).toPrecision(13)","\"12345.67890123\""); |
| 410 | shouldBe("Number(12345.67890123456789012345).toPrecision(14)","\"12345.678901235\""); |
| 411 | shouldBe("Number(12345.67890123456789012345).toPrecision(15)","\"12345.6789012346\""); |
| 412 | shouldBe("Number(12345.67890123456789012345).toPrecision(16)","\"12345.67890123457\""); |
| 413 | shouldBe("Number(12345.67890123456789012345).toPrecision(17)","\"12345.678901234567\""); |
| 414 | shouldBe("Number(12345.67890123456789012345).toPrecision(18)","\"12345.6789012345671\""); |
| 415 | shouldBe("Number(12345.67890123456789012345).toPrecision(19)","\"12345.67890123456709\""); |
| 416 | shouldBe("Number(12345.67890123456789012345).toPrecision(20)","\"12345.678901234567093\""); |
| 417 | shouldBe("Number(12345.67890123456789012345).toPrecision(21)","\"12345.6789012345670926\""); |
| 418 | shouldBe("Number(-.0000000012345).toPrecision(2)","\"-1.2e-9\""); |
| 419 | shouldBe("Number(-.000000012345).toPrecision(2)","\"-1.2e-8\""); |
| 420 | shouldBe("Number(-.00000012345).toPrecision(2)","\"-1.2e-7\""); |
| 421 | shouldBe("Number(-.0000012345).toPrecision(2)","\"-0.0000012\""); |
| 422 | shouldBe("Number(-.000012345).toPrecision(2)","\"-0.000012\""); |
| 423 | shouldBe("Number(-.00012345).toPrecision(2)","\"-0.00012\""); |
| 424 | shouldBe("Number(-.0012345).toPrecision(2)","\"-0.0012\""); |
| 425 | shouldBe("Number(-.012345).toPrecision(2)","\"-0.012\""); |
| 426 | shouldBe("Number(-.12345).toPrecision(2)","\"-0.12\""); |
| 427 | shouldBe("Number(-1.2345).toPrecision(2)","\"-1.2\""); |
| 428 | shouldBe("Number(-12.345).toPrecision(2)","\"-12\""); |
| 429 | shouldBe("Number(-123.45).toPrecision(2)","\"-1.2e+2\""); |
| 430 | shouldBe("Number(-1234.5).toPrecision(2)","\"-1.2e+3\""); |
| 431 | shouldBe("Number(-12345).toPrecision(2)","\"-1.2e+4\""); |
| 432 | shouldBe("Number(-12345.67).toPrecision(4)","\"-1.235e+4\""); |
| 433 | shouldBe("Number(-12344.67).toPrecision(4)","\"-1.234e+4\""); |
| 434 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision()","\"-0.00012345678901234567\""); |
| 435 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(1)","\"-0.0001\""); |
| 436 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(2)","\"-0.00012\""); |
| 437 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(3)","\"-0.000123\""); |
| 438 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(4)","\"-0.0001235\""); |
| 439 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(5)","\"-0.00012346\""); |
| 440 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(6)","\"-0.000123457\""); |
| 441 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(7)","\"-0.0001234568\""); |
| 442 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(8)","\"-0.00012345679\""); |
| 443 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(9)","\"-0.000123456789\""); |
| 444 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(10)","\"-0.0001234567890\""); |
| 445 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(11)","\"-0.00012345678901\""); |
| 446 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(12)","\"-0.000123456789012\""); |
| 447 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(13)","\"-0.0001234567890123\""); |
| 448 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(14)","\"-0.00012345678901235\""); |
| 449 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(15)","\"-0.000123456789012346\""); |
| 450 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(16)","\"-0.0001234567890123457\""); |
| 451 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(17)","\"-0.00012345678901234567\""); |
| 452 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(18)","\"-0.000123456789012345671\""); |
| 453 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(19)","\"-0.0001234567890123456713\""); |
| 454 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(20)","\"-0.00012345678901234567130\""); |
| 455 | shouldBe("Number(-0.0001234567890123456789012345).toPrecision(21)","\"-0.000123456789012345671298\""); |
| 456 | shouldBe("Number(-12345.67890123456789012345).toPrecision()","\"-12345.678901234567\""); |
| 457 | shouldBe("Number(-12345.67890123456789012345).toPrecision(1)","\"-1e+4\""); |
| 458 | shouldBe("Number(-12345.67890123456789012345).toPrecision(2)","\"-1.2e+4\""); |
| 459 | shouldBe("Number(-12345.67890123456789012345).toPrecision(3)","\"-1.23e+4\""); |
| 460 | shouldBe("Number(-12345.67890123456789012345).toPrecision(4)","\"-1.235e+4\""); |
| 461 | shouldBe("Number(-12345.67890123456789012345).toPrecision(5)","\"-12346\""); |
| 462 | shouldBe("Number(-12345.67890123456789012345).toPrecision(6)","\"-12345.7\""); |
| 463 | shouldBe("Number(-12345.67890123456789012345).toPrecision(7)","\"-12345.68\""); |
| 464 | shouldBe("Number(-12345.67890123456789012345).toPrecision(8)","\"-12345.679\""); |
| 465 | shouldBe("Number(-12345.67890123456789012345).toPrecision(9)","\"-12345.6789\""); |
| 466 | shouldBe("Number(-12345.67890123456789012345).toPrecision(10)","\"-12345.67890\""); |
| 467 | shouldBe("Number(-12345.67890123456789012345).toPrecision(11)","\"-12345.678901\""); |
| 468 | shouldBe("Number(-12345.67890123456789012345).toPrecision(12)","\"-12345.6789012\""); |
| 469 | shouldBe("Number(-12345.67890123456789012345).toPrecision(13)","\"-12345.67890123\""); |
| 470 | shouldBe("Number(-12345.67890123456789012345).toPrecision(14)","\"-12345.678901235\""); |
| 471 | shouldBe("Number(-12345.67890123456789012345).toPrecision(15)","\"-12345.6789012346\""); |
| 472 | shouldBe("Number(-12345.67890123456789012345).toPrecision(16)","\"-12345.67890123457\""); |
| 473 | shouldBe("Number(-12345.67890123456789012345).toPrecision(17)","\"-12345.678901234567\""); |
| 474 | shouldBe("Number(-12345.67890123456789012345).toPrecision(18)","\"-12345.6789012345671\""); |
| 475 | shouldBe("Number(-12345.67890123456789012345).toPrecision(19)","\"-12345.67890123456709\""); |
| 476 | shouldBe("Number(-12345.67890123456789012345).toPrecision(20)","\"-12345.678901234567093\""); |
| 477 | shouldBe("Number(-12345.67890123456789012345).toPrecision(21)","\"-12345.6789012345670926\""); |
| 478 | shouldBe("Number(0).toPrecision()","\"0\""); |
| 479 | shouldBe("Number(0).toPrecision(1)","\"0\""); |
| 480 | shouldBe("Number(0).toPrecision(2)","\"0.0\""); |
| 481 | shouldBe("Number(0).toPrecision(3)","\"0.00\""); |
| 482 | shouldBe("Number(0).toPrecision(4)","\"0.000\""); |
| 483 | shouldBe("Number(0).toPrecision(5)","\"0.0000\""); |
| 484 | shouldBe("Number(0).toPrecision(6)","\"0.00000\""); |
| 485 | shouldBe("Number(0).toPrecision(7)","\"0.000000\""); |
| 486 | shouldBe("Number(0).toPrecision(8)","\"0.0000000\""); |
| 487 | shouldBe("Number(0).toPrecision(9)","\"0.00000000\""); |
| 488 | shouldBe("Number(0).toPrecision(10)","\"0.000000000\""); |
| 489 | shouldBe("Number(0).toPrecision(11)","\"0.0000000000\""); |
| 490 | shouldBe("Number(0).toPrecision(12)","\"0.00000000000\""); |
| 491 | shouldBe("Number(0).toPrecision(13)","\"0.000000000000\""); |
| 492 | shouldBe("Number(0).toPrecision(14)","\"0.0000000000000\""); |
| 493 | shouldBe("Number(0).toPrecision(15)","\"0.00000000000000\""); |
| 494 | shouldBe("Number(0).toPrecision(16)","\"0.000000000000000\""); |
| 495 | shouldBe("Number(0).toPrecision(17)","\"0.0000000000000000\""); |
| 496 | shouldBe("Number(0).toPrecision(18)","\"0.00000000000000000\""); |
| 497 | shouldBe("Number(0).toPrecision(19)","\"0.000000000000000000\""); |
| 498 | shouldBe("Number(0).toPrecision(20)","\"0.0000000000000000000\""); |
| 499 | shouldBe("Number(0).toPrecision(21)","\"0.00000000000000000000\""); |