Cover NumericLiteral..toString, NaN.toString, Infinity.toString. Fixes gh-1732

This commit is contained in:
Rick Waldron 2020-09-17 09:49:36 -04:00
parent 1ab47810d1
commit 81db9994c9
39 changed files with 613 additions and 0 deletions

View File

@ -0,0 +1,20 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
If radix is undefined the Number 10 is used as the value of radix.
info: |
If radix is undefined, let radixNumber be 10.
...
If radixNumber = 10, return ! ToString(x).
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in 6.1.6.1.20.
The optional radix should be an integer value in the inclusive range 2 to 36. If radix is undefined the Number 10 is used as the value of radix.
---*/
assert.sameValue(0..toString(), "0");
assert.sameValue(1..toString(), "1");
assert.sameValue(NaN.toString(), "NaN");
assert.sameValue(Infinity.toString(), "Infinity");

View File

@ -0,0 +1,21 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
If radixNumber < 2 or radixNumber > 36, throw a RangeError exception.
---*/
assert.throws(RangeError, () => {
0..toString(1);
});
assert.throws(RangeError, () => {
1..toString(1);
});
assert.throws(RangeError, () => {
NaN.toString(1);
});
assert.throws(RangeError, () => {
Infinity.toString(1);
});

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (10)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(10), "0");
assert.sameValue(1..toString(10), "1");
assert.sameValue(NaN.toString(10), "NaN");
assert.sameValue(Infinity.toString(10), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (11)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(11), "0");
assert.sameValue(1..toString(11), "1");
assert.sameValue(NaN.toString(11), "NaN");
assert.sameValue(Infinity.toString(11), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (12)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(12), "0");
assert.sameValue(1..toString(12), "1");
assert.sameValue(NaN.toString(12), "NaN");
assert.sameValue(Infinity.toString(12), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (13)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(13), "0");
assert.sameValue(1..toString(13), "1");
assert.sameValue(NaN.toString(13), "NaN");
assert.sameValue(Infinity.toString(13), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (14)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(14), "0");
assert.sameValue(1..toString(14), "1");
assert.sameValue(NaN.toString(14), "NaN");
assert.sameValue(Infinity.toString(14), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (15)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(15), "0");
assert.sameValue(1..toString(15), "1");
assert.sameValue(NaN.toString(15), "NaN");
assert.sameValue(Infinity.toString(15), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (16)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(16), "0");
assert.sameValue(1..toString(16), "1");
assert.sameValue(NaN.toString(16), "NaN");
assert.sameValue(Infinity.toString(16), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (17)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(17), "0");
assert.sameValue(1..toString(17), "1");
assert.sameValue(NaN.toString(17), "NaN");
assert.sameValue(Infinity.toString(17), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (18)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(18), "0");
assert.sameValue(1..toString(18), "1");
assert.sameValue(NaN.toString(18), "NaN");
assert.sameValue(Infinity.toString(18), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (19)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(19), "0");
assert.sameValue(1..toString(19), "1");
assert.sameValue(NaN.toString(19), "NaN");
assert.sameValue(Infinity.toString(19), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (2)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(2), "0");
assert.sameValue(1..toString(2), "1");
assert.sameValue(NaN.toString(2), "NaN");
assert.sameValue(Infinity.toString(2), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (20)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(20), "0");
assert.sameValue(1..toString(20), "1");
assert.sameValue(NaN.toString(20), "NaN");
assert.sameValue(Infinity.toString(20), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (21)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(21), "0");
assert.sameValue(1..toString(21), "1");
assert.sameValue(NaN.toString(21), "NaN");
assert.sameValue(Infinity.toString(21), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (22)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(22), "0");
assert.sameValue(1..toString(22), "1");
assert.sameValue(NaN.toString(22), "NaN");
assert.sameValue(Infinity.toString(22), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (23)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(23), "0");
assert.sameValue(1..toString(23), "1");
assert.sameValue(NaN.toString(23), "NaN");
assert.sameValue(Infinity.toString(23), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (24)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(24), "0");
assert.sameValue(1..toString(24), "1");
assert.sameValue(NaN.toString(24), "NaN");
assert.sameValue(Infinity.toString(24), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (25)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(25), "0");
assert.sameValue(1..toString(25), "1");
assert.sameValue(NaN.toString(25), "NaN");
assert.sameValue(Infinity.toString(25), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (26)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(26), "0");
assert.sameValue(1..toString(26), "1");
assert.sameValue(NaN.toString(26), "NaN");
assert.sameValue(Infinity.toString(26), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (27)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(27), "0");
assert.sameValue(1..toString(27), "1");
assert.sameValue(NaN.toString(27), "NaN");
assert.sameValue(Infinity.toString(27), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (28)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(28), "0");
assert.sameValue(1..toString(28), "1");
assert.sameValue(NaN.toString(28), "NaN");
assert.sameValue(Infinity.toString(28), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (29)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(29), "0");
assert.sameValue(1..toString(29), "1");
assert.sameValue(NaN.toString(29), "NaN");
assert.sameValue(Infinity.toString(29), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (3)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(3), "0");
assert.sameValue(1..toString(3), "1");
assert.sameValue(NaN.toString(3), "NaN");
assert.sameValue(Infinity.toString(3), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (30)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(30), "0");
assert.sameValue(1..toString(30), "1");
assert.sameValue(NaN.toString(30), "NaN");
assert.sameValue(Infinity.toString(30), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (31)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(31), "0");
assert.sameValue(1..toString(31), "1");
assert.sameValue(NaN.toString(31), "NaN");
assert.sameValue(Infinity.toString(31), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (32)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(32), "0");
assert.sameValue(1..toString(32), "1");
assert.sameValue(NaN.toString(32), "NaN");
assert.sameValue(Infinity.toString(32), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (33)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(33), "0");
assert.sameValue(1..toString(33), "1");
assert.sameValue(NaN.toString(33), "NaN");
assert.sameValue(Infinity.toString(33), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (34)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(34), "0");
assert.sameValue(1..toString(34), "1");
assert.sameValue(NaN.toString(34), "NaN");
assert.sameValue(Infinity.toString(34), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (35)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(35), "0");
assert.sameValue(1..toString(35), "1");
assert.sameValue(NaN.toString(35), "NaN");
assert.sameValue(Infinity.toString(35), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (36)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(36), "0");
assert.sameValue(1..toString(36), "1");
assert.sameValue(NaN.toString(36), "NaN");
assert.sameValue(Infinity.toString(36), "Infinity");

View File

@ -0,0 +1,21 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
If radixNumber < 2 or radixNumber > 36, throw a RangeError exception.
---*/
assert.throws(RangeError, () => {
0..toString(37);
});
assert.throws(RangeError, () => {
1..toString(37);
});
assert.throws(RangeError, () => {
NaN.toString(37);
});
assert.throws(RangeError, () => {
Infinity.toString(37);
});

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (4)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(4), "0");
assert.sameValue(1..toString(4), "1");
assert.sameValue(NaN.toString(4), "NaN");
assert.sameValue(Infinity.toString(4), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (5)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(5), "0");
assert.sameValue(1..toString(5), "1");
assert.sameValue(NaN.toString(5), "NaN");
assert.sameValue(Infinity.toString(5), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (6)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(6), "0");
assert.sameValue(1..toString(6), "1");
assert.sameValue(NaN.toString(6), "NaN");
assert.sameValue(Infinity.toString(6), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (7)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(7), "0");
assert.sameValue(1..toString(7), "1");
assert.sameValue(NaN.toString(7), "NaN");
assert.sameValue(Infinity.toString(7), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (8)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(8), "0");
assert.sameValue(1..toString(8), "1");
assert.sameValue(NaN.toString(8), "NaN");
assert.sameValue(Infinity.toString(8), "Infinity");

View File

@ -0,0 +1,15 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Calling toString(radix) (9)
info: |
Return the String representation of this Number value using the radix specified by radixNumber. Letters a-z are used for digits with values 10 through 35. The precise algorithm is implementation-defined, however the algorithm should be a generalization of that specified in sec-numeric-types-number-tostring.
---*/
assert.sameValue(0..toString(9), "0");
assert.sameValue(1..toString(9), "1");
assert.sameValue(NaN.toString(9), "NaN");
assert.sameValue(Infinity.toString(9), "Infinity");

View File

@ -0,0 +1,26 @@
// Copyright 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-number.prototype.tostring
description: >
Else, let radixNumber be ? ToInteger(radix).
---*/
var poisoned = {
valueOf() {
throw new Test262Error();
}
};
assert.throws(Test262Error, () => {
0..toString(poisoned);
});
assert.throws(Test262Error, () => {
1..toString(poisoned);
});
assert.throws(Test262Error, () => {
NaN.toString(poisoned);
});
assert.throws(Test262Error, () => {
Infinity.toString(poisoned);
});