diff options
Diffstat (limited to 'js/src/tests/test262/built-ins/Number/S9.3.1_A32.js')
-rw-r--r-- | js/src/tests/test262/built-ins/Number/S9.3.1_A32.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/js/src/tests/test262/built-ins/Number/S9.3.1_A32.js b/js/src/tests/test262/built-ins/Number/S9.3.1_A32.js new file mode 100644 index 0000000000..312125be6a --- /dev/null +++ b/js/src/tests/test262/built-ins/Number/S9.3.1_A32.js @@ -0,0 +1,39 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +info: | + Once the exact MV for a string numeric literal has been + determined, it is then rounded to a value of the Number type with 20 + significant digits by replacing each significant digit after the 20th + with a 0 digit or the number value +es5id: 9.3.1_A32 +description: Use various long numbers, for example, 1234567890.1234567890 +---*/ + +// CHECK#1 +if (Number("1234567890.1234567890") !== 1234567890.1234567890) { + $ERROR('#1: Number("1234567890.1234567890") === 1234567890.1234567890. Actual: ' + (Number("1234567890.1234567890"))); +} + +// CHECK#2 +if (Number("1234567890.1234567890") !== 1234567890.1234567000) { + $ERROR('#2: Number("1234567890.1234567890") === 1234567890.1234567000. Actual: ' + (Number("1234567890.1234567890"))); +} + +// CHECK#3 +if (+("1234567890.1234567890") === 1234567890.123456) { + $ERROR('#3: +("1234567890.1234567890") !== 1234567890.123456'); +} + +// CHECK#4 +if (Number("0.12345678901234567890") !== 0.123456789012345678) { + $ERROR('#4: Number("0.12345678901234567890") === 0.123456789012345678. Actual: ' + (Number("0.12345678901234567890"))); +} + +// CHECK#4 +if (Number("00.12345678901234567890") !== 0.123456789012345678) { + $ERROR('#4: Number("00.12345678901234567890") === 0.123456789012345678. Actual: ' + (Number("00.12345678901234567890"))); +} + +reportCompare(0, 0); |