mirror of https://github.com/tc39/test262.git
Tests for NumericSeparatorLiteral, Number(...)
This commit is contained in:
parent
844e317ba6
commit
9380826d5b
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0b` | `0B` BinaryDigit NumericLiteralSeparator BinaryDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
BinaryIntegerLiteral ::
|
||||
0b BinaryDigits
|
||||
0B BinaryDigits
|
||||
|
||||
BinaryDigits ::
|
||||
BinaryDigit
|
||||
BinaryDigits BinaryDigit
|
||||
BinaryDigits NumericLiteralSeparator BinaryDigit
|
||||
|
||||
BinaryDigit :: one of
|
||||
0 1
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0b0_1"), 0b01);
|
||||
assert.sameValue(Number("0B0_1"), 0B01);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0b` | `0B` BinaryDigit NumericLiteralSeparator BinaryDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
BinaryIntegerLiteral ::
|
||||
0b BinaryDigits
|
||||
0B BinaryDigits
|
||||
|
||||
BinaryDigits ::
|
||||
BinaryDigit
|
||||
BinaryDigits BinaryDigit
|
||||
BinaryDigits NumericLiteralSeparator BinaryDigit
|
||||
|
||||
BinaryDigit :: one of
|
||||
0 1
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0b0_10"), 0b010);
|
||||
assert.sameValue(Number("0B0_10"), 0B010);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0b` | `0B` BinaryDigits NumericLiteralSeparator BinaryDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
BinaryIntegerLiteral ::
|
||||
0b BinaryDigits
|
||||
0B BinaryDigits
|
||||
|
||||
BinaryDigits ::
|
||||
BinaryDigit
|
||||
BinaryDigits BinaryDigit
|
||||
BinaryDigits NumericLiteralSeparator BinaryDigit
|
||||
|
||||
BinaryDigit :: one of
|
||||
0 1
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0b01_0"), 0b010);
|
||||
assert.sameValue(Number("0B01_0"), 0B010);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0b` | `0B` BinaryDigits NumericLiteralSeparator BinaryDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
BinaryIntegerLiteral ::
|
||||
0b BinaryDigits
|
||||
0B BinaryDigits
|
||||
|
||||
BinaryDigits ::
|
||||
BinaryDigit
|
||||
BinaryDigits BinaryDigit
|
||||
BinaryDigits NumericLiteralSeparator BinaryDigit
|
||||
|
||||
BinaryDigit :: one of
|
||||
0 1
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0b01_00"), 0b0100);
|
||||
assert.sameValue(Number("0B01_00"), 0B0100);
|
|
@ -0,0 +1,26 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
DecimalDigits `.` DecimalDigits ExponentPart_opt `-` DecimalDigits
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalLiteral ::
|
||||
DecimalIntegerLiteral . DecimalDigits_opt ExponentPart_opt
|
||||
|
||||
DecimalDigits ::
|
||||
...
|
||||
DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
|
||||
SignedInteger ::
|
||||
...
|
||||
- DecimalDigits
|
||||
...
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("1.0e-1_0"), 1.0e-10);
|
|
@ -0,0 +1,26 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
DecimalDigits `.` DecimalDigits ExponentPart_opt `-` DecimalDigits
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalLiteral ::
|
||||
DecimalIntegerLiteral . DecimalDigits_opt ExponentPart_opt
|
||||
|
||||
DecimalDigits ::
|
||||
...
|
||||
DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
|
||||
SignedInteger ::
|
||||
...
|
||||
- DecimalDigits
|
||||
...
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("1.0e-10_0"), 1.0e-100);
|
|
@ -0,0 +1,26 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
DecimalDigits `.` DecimalDigits ExponentPart_opt `+` DecimalDigits
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalLiteral ::
|
||||
DecimalIntegerLiteral . DecimalDigits_opt ExponentPart_opt
|
||||
|
||||
DecimalDigits ::
|
||||
...
|
||||
DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
|
||||
SignedInteger ::
|
||||
...
|
||||
+ DecimalDigits
|
||||
...
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("1.0e+1_0"), 1.0e+10);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
DecimalDigits `.` DecimalDigits ExponentPart_opt `+` DecimalDigits
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalLiteral ::
|
||||
DecimalIntegerLiteral . DecimalDigits_opt ExponentPart_opt
|
||||
|
||||
DecimalDigits ::
|
||||
...
|
||||
DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
|
||||
SignedInteger ::
|
||||
...
|
||||
+ DecimalDigits
|
||||
...
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("1.0e+10_0"), 1.0e+100);
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: NonZeroDigit NumericLiteralSeparator DecimalDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalIntegerLiteral ::
|
||||
...
|
||||
NonZeroDigit NumericLiteralSeparator_opt DecimalDigits
|
||||
|
||||
|
||||
DecimalDigits ::
|
||||
DecimalDigit
|
||||
...
|
||||
|
||||
DecimalDigit :: one of
|
||||
0 1 2 3 4 5 6 7 8 9
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("1_0"), 10);
|
||||
assert.sameValue(Number("1_1"), 11);
|
||||
assert.sameValue(Number("1_2"), 12);
|
||||
assert.sameValue(Number("1_3"), 13);
|
||||
assert.sameValue(Number("1_4"), 14);
|
||||
assert.sameValue(Number("1_5"), 15);
|
||||
assert.sameValue(Number("1_6"), 16);
|
||||
assert.sameValue(Number("1_7"), 17);
|
||||
assert.sameValue(Number("1_8"), 18);
|
||||
assert.sameValue(Number("1_9"), 19);
|
|
@ -0,0 +1,25 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
DecimalDigits `.` DecimalDigits NumericLiteralSeparator DecimalDigits
|
||||
ExponentPart SignedInteger
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalLiteral ::
|
||||
. DecimalDigits ExponentPart_opt
|
||||
|
||||
DecimalDigits ::
|
||||
...
|
||||
DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
|
||||
ExponentIndicator :: one of
|
||||
e E
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("10.00_01e2"), 10.0001e2);
|
|
@ -0,0 +1,26 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalDigits ::
|
||||
...
|
||||
DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("123456789_0"), 1234567890);
|
||||
assert.sameValue(Number("123456789_1"), 1234567891);
|
||||
assert.sameValue(Number("123456789_2"), 1234567892);
|
||||
assert.sameValue(Number("123456789_3"), 1234567893);
|
||||
assert.sameValue(Number("123456789_4"), 1234567894);
|
||||
assert.sameValue(Number("123456789_5"), 1234567895);
|
||||
assert.sameValue(Number("123456789_6"), 1234567896);
|
||||
assert.sameValue(Number("123456789_7"), 1234567897);
|
||||
assert.sameValue(Number("123456789_8"), 1234567898);
|
||||
assert.sameValue(Number("123456789_9"), 1234567899);
|
|
@ -0,0 +1,25 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`.` DecimalDigit NumericLiteralSeparator DecimalDigit ExponentPart
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalLiteral ::
|
||||
. DecimalDigits ExponentPart_opt
|
||||
|
||||
DecimalDigits ::
|
||||
DecimalDigit
|
||||
...
|
||||
DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
|
||||
ExponentIndicator :: one of
|
||||
e E
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number(".0_1e2"), .01e2);
|
|
@ -0,0 +1,25 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`.` DecimalDigit NumericLiteralSeparator DecimalDigits ExponentPart
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalLiteral ::
|
||||
. DecimalDigits ExponentPart_opt
|
||||
|
||||
DecimalDigits ::
|
||||
DecimalDigit
|
||||
...
|
||||
DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
|
||||
ExponentIndicator :: one of
|
||||
e E
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number(".1_01e2"), .101e2);
|
|
@ -0,0 +1,25 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`.` DecimalDigits NumericLiteralSeparator DecimalDigit ExponentPart
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalLiteral ::
|
||||
. DecimalDigits ExponentPart_opt
|
||||
|
||||
DecimalDigits ::
|
||||
DecimalDigit
|
||||
...
|
||||
DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
|
||||
ExponentIndicator :: one of
|
||||
e E
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number(".10_1e2"), .101e2);
|
|
@ -0,0 +1,25 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`.` DecimalDigits NumericLiteralSeparator DecimalDigits ExponentPart
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalLiteral ::
|
||||
. DecimalDigits ExponentPart_opt
|
||||
|
||||
DecimalDigits ::
|
||||
DecimalDigit
|
||||
...
|
||||
DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
|
||||
ExponentIndicator :: one of
|
||||
e E
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number(".00_01e2"), .0001e2);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0x` | `0X` HexDigit NumericLiteralSeparator HexDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
HexIntegerLiteral ::
|
||||
0x HexDigits
|
||||
0X HexDigits
|
||||
|
||||
HexDigits ::
|
||||
HexDigit
|
||||
HexDigits HexDigit
|
||||
HexDigits NumericLiteralSeparator HexDigit
|
||||
|
||||
HexDigit::one of
|
||||
0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0x0_1"), 0x01);
|
||||
assert.sameValue(Number("0X0_1"), 0X01);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0x` | `0X` HexDigit NumericLiteralSeparator HexDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
HexIntegerLiteral ::
|
||||
0x HexDigits
|
||||
0X HexDigits
|
||||
|
||||
HexDigits ::
|
||||
HexDigit
|
||||
HexDigits HexDigit
|
||||
HexDigits NumericLiteralSeparator HexDigit
|
||||
|
||||
HexDigit::one of
|
||||
0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0x0_10"), 0x010);
|
||||
assert.sameValue(Number("0X0_10"), 0X010);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0x` | `0X` HexDigits NumericLiteralSeparator HexDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
HexIntegerLiteral ::
|
||||
0x HexDigits
|
||||
0X HexDigits
|
||||
|
||||
HexDigits ::
|
||||
HexDigit
|
||||
HexDigits HexDigit
|
||||
HexDigits NumericLiteralSeparator HexDigit
|
||||
|
||||
HexDigit::one of
|
||||
0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0x01_0"), 0x010);
|
||||
assert.sameValue(Number("0X01_0"), 0X010);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0x` | `0X` HexDigits NumericLiteralSeparator HexDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
HexIntegerLiteral ::
|
||||
0x HexDigits
|
||||
0X HexDigits
|
||||
|
||||
HexDigits ::
|
||||
HexDigit
|
||||
HexDigits HexDigit
|
||||
HexDigits NumericLiteralSeparator HexDigit
|
||||
|
||||
HexDigit::one of
|
||||
0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0x01_00"), 0x0100);
|
||||
assert.sameValue(Number("0X01_00"), 0X0100);
|
|
@ -0,0 +1,47 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0x` | `0X` HexDigit NumericLiteralSeparator HexDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
HexIntegerLiteral ::
|
||||
0x HexDigits
|
||||
0X HexDigits
|
||||
|
||||
HexDigits ::
|
||||
HexDigit
|
||||
HexDigits HexDigit
|
||||
HexDigits NumericLiteralSeparator HexDigit
|
||||
|
||||
HexDigit::one of
|
||||
0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0x0_0"), 0x00);
|
||||
assert.sameValue(Number("0x1_1"), 0x11);
|
||||
assert.sameValue(Number("0x2_2"), 0x22);
|
||||
assert.sameValue(Number("0x3_3"), 0x33);
|
||||
assert.sameValue(Number("0x4_4"), 0x44);
|
||||
assert.sameValue(Number("0x5_5"), 0x55);
|
||||
assert.sameValue(Number("0x6_6"), 0x66);
|
||||
assert.sameValue(Number("0x7_7"), 0x77);
|
||||
assert.sameValue(Number("0x8_8"), 0x88);
|
||||
assert.sameValue(Number("0x9_9"), 0x99);
|
||||
assert.sameValue(Number("0xa_a"), 0xaa);
|
||||
assert.sameValue(Number("0xb_b"), 0xbb);
|
||||
assert.sameValue(Number("0xc_c"), 0xcc);
|
||||
assert.sameValue(Number("0xd_d"), 0xdd);
|
||||
assert.sameValue(Number("0xe_e"), 0xee);
|
||||
assert.sameValue(Number("0xf_f"), 0xff);
|
||||
assert.sameValue(Number("0xA_A"), 0xAA);
|
||||
assert.sameValue(Number("0xB_B"), 0xBB);
|
||||
assert.sameValue(Number("0xC_C"), 0xCC);
|
||||
assert.sameValue(Number("0xD_D"), 0xDD);
|
||||
assert.sameValue(Number("0xE_E"), 0xEE);
|
||||
assert.sameValue(Number("0xF_F"), 0xFF);
|
|
@ -0,0 +1,38 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: NonZeroDigit NumericLiteralSeparator DecimalDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalIntegerLiteral ::
|
||||
...
|
||||
NonZeroDigit NumericLiteralSeparator_opt DecimalDigits
|
||||
|
||||
NonZeroDigit :: one of
|
||||
1 2 3 4 5 6 7 8 9
|
||||
|
||||
DecimalDigits ::
|
||||
DecimalDigit
|
||||
...
|
||||
|
||||
DecimalDigit :: one of
|
||||
0 1 2 3 4 5 6 7 8 9
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("1_0"), 10);
|
||||
assert.sameValue(Number("1_1"), 11);
|
||||
assert.sameValue(Number("2_2"), 22);
|
||||
assert.sameValue(Number("3_3"), 33);
|
||||
assert.sameValue(Number("4_4"), 44);
|
||||
assert.sameValue(Number("5_5"), 55);
|
||||
assert.sameValue(Number("6_6"), 66);
|
||||
assert.sameValue(Number("7_7"), 77);
|
||||
assert.sameValue(Number("8_8"), 88);
|
||||
assert.sameValue(Number("9_9"), 99);
|
||||
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: NonZeroDigit NumericLiteralSeparator DecimalDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalIntegerLiteral ::
|
||||
...
|
||||
NonZeroDigit NumericLiteralSeparator_opt DecimalDigits
|
||||
|
||||
NonZeroDigit :: one of
|
||||
1 2 3 4 5 6 7 8 9
|
||||
|
||||
DecimalDigits ::
|
||||
...
|
||||
DecimalDigits DecimalDigit
|
||||
...
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("1_1"), 11);
|
|
@ -0,0 +1,25 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: NonZeroDigit NumericLiteralSeparator DecimalDigits
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
DecimalIntegerLiteral ::
|
||||
...
|
||||
NonZeroDigit NumericLiteralSeparator_opt DecimalDigits
|
||||
|
||||
NonZeroDigit :: one of
|
||||
1 2 3 4 5 6 7 8 9
|
||||
|
||||
DecimalDigits ::
|
||||
...
|
||||
DecimalDigits DecimalDigit
|
||||
...
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("1_0123456789"), 10123456789);
|
|
@ -0,0 +1,33 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0o` | `0O` OctalDigit NumericLiteralSeparator OctalDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
OctalIntegerLiteral ::
|
||||
0o OctalDigits
|
||||
0O OctalDigits
|
||||
|
||||
OctalDigits ::
|
||||
OctalDigit
|
||||
OctalDigits OctalDigit
|
||||
OctalDigits NumericLiteralSeparator OctalDigit
|
||||
|
||||
OctalDigit :: one of
|
||||
0 1 2 3 4 5 6 7
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0o0_0"), 0o00);
|
||||
assert.sameValue(Number("0o1_1"), 0o11);
|
||||
assert.sameValue(Number("0o2_2"), 0o22);
|
||||
assert.sameValue(Number("0o3_3"), 0o33);
|
||||
assert.sameValue(Number("0o4_4"), 0o44);
|
||||
assert.sameValue(Number("0o5_5"), 0o55);
|
||||
assert.sameValue(Number("0o6_6"), 0o66);
|
||||
assert.sameValue(Number("0o7_7"), 0o77);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0o` | `0O` OctalDigit NumericLiteralSeparator OctalDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
OctalIntegerLiteral ::
|
||||
0o OctalDigits
|
||||
0O OctalDigits
|
||||
|
||||
OctalDigits ::
|
||||
OctalDigit
|
||||
OctalDigits OctalDigit
|
||||
OctalDigits NumericLiteralSeparator OctalDigit
|
||||
|
||||
OctalDigit :: one of
|
||||
0 1 2 3 4 5 6 7
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0o0_1"), 0o01);
|
||||
assert.sameValue(Number("0O0_1"), 0O01);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0o` | `0O` OctalDigit NumericLiteralSeparator OctalDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
OctalIntegerLiteral ::
|
||||
0o OctalDigits
|
||||
0O OctalDigits
|
||||
|
||||
OctalDigits ::
|
||||
OctalDigit
|
||||
OctalDigits OctalDigit
|
||||
OctalDigits NumericLiteralSeparator OctalDigit
|
||||
|
||||
OctalDigit :: one of
|
||||
0 1 2 3 4 5 6 7
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0o0_10"), 0o010);
|
||||
assert.sameValue(Number("0O0_10"), 0O010);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0o` | `0O` OctalDigits NumericLiteralSeparator OctalDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
OctalIntegerLiteral ::
|
||||
0o OctalDigits
|
||||
0O OctalDigits
|
||||
|
||||
OctalDigits ::
|
||||
OctalDigit
|
||||
OctalDigits OctalDigit
|
||||
OctalDigits NumericLiteralSeparator OctalDigit
|
||||
|
||||
OctalDigit :: one of
|
||||
0 1 2 3 4 5 6 7
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0o01_0"), 0o010);
|
||||
assert.sameValue(Number("0O01_0"), 0O010);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: >
|
||||
`0o` | `0O` OctalDigits NumericLiteralSeparator OctalDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
OctalIntegerLiteral ::
|
||||
0o OctalDigits
|
||||
0O OctalDigits
|
||||
|
||||
OctalDigits ::
|
||||
OctalDigit
|
||||
OctalDigits OctalDigit
|
||||
OctalDigits NumericLiteralSeparator OctalDigit
|
||||
|
||||
OctalDigit :: one of
|
||||
0 1 2 3 4 5 6 7
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("0o01_00"), 0o0100);
|
||||
assert.sameValue(Number("0O01_00"), 0O0100);
|
|
@ -0,0 +1,26 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
SignedInteger ::
|
||||
...
|
||||
- DecimalDigits
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("-123456789_0"), -1234567890);
|
||||
assert.sameValue(Number("-123456789_1"), -1234567891);
|
||||
assert.sameValue(Number("-123456789_2"), -1234567892);
|
||||
assert.sameValue(Number("-123456789_3"), -1234567893);
|
||||
assert.sameValue(Number("-123456789_4"), -1234567894);
|
||||
assert.sameValue(Number("-123456789_5"), -1234567895);
|
||||
assert.sameValue(Number("-123456789_6"), -1234567896);
|
||||
assert.sameValue(Number("-123456789_7"), -1234567897);
|
||||
assert.sameValue(Number("-123456789_8"), -1234567898);
|
||||
assert.sameValue(Number("-123456789_9"), -1234567899);
|
|
@ -0,0 +1,27 @@
|
|||
// Copyright (C) 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: prod-NumericLiteralSeparator
|
||||
description: DecimalDigits NumericLiteralSeparator DecimalDigit
|
||||
info: |
|
||||
NumericLiteralSeparator ::
|
||||
_
|
||||
|
||||
SignedInteger ::
|
||||
...
|
||||
+ DecimalDigits
|
||||
...
|
||||
|
||||
---*/
|
||||
|
||||
assert.sameValue(Number("+123456789_0"), 1234567890);
|
||||
assert.sameValue(Number("+123456789_1"), 1234567891);
|
||||
assert.sameValue(Number("+123456789_2"), 1234567892);
|
||||
assert.sameValue(Number("+123456789_3"), 1234567893);
|
||||
assert.sameValue(Number("+123456789_4"), 1234567894);
|
||||
assert.sameValue(Number("+123456789_5"), 1234567895);
|
||||
assert.sameValue(Number("+123456789_6"), 1234567896);
|
||||
assert.sameValue(Number("+123456789_7"), 1234567897);
|
||||
assert.sameValue(Number("+123456789_8"), 1234567898);
|
||||
assert.sameValue(Number("+123456789_9"), 1234567899);
|
Loading…
Reference in New Issue