Add Intl[@@toStringTag] coverage

This commit is contained in:
Alexey Shvayka 2020-07-21 06:30:35 +03:00
parent c619375b46
commit aa4fd3fffa
2 changed files with 55 additions and 0 deletions

View File

@ -0,0 +1,32 @@
// Copyright (C) 2020 Alexey Shvayka. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-Intl-toStringTag
description: >
Object.prototype.toString utilizes Intl[@@toStringTag] and doesn't special-case Intl namespace object.
info: |
Object.prototype.toString ( )
[...]
14. Else, let builtinTag be "Object".
15. Let tag be ? Get(O, @@toStringTag).
16. If Type(tag) is not String, set tag to builtinTag.
17. Return the string-concatenation of "[object ", tag, and "]".
Intl [ @@toStringTag ]
The initial value of the @@toStringTag property is the String value "Intl".
features: [Symbol.toStringTag]
---*/
assert.sameValue(Intl.toString(), "[object Intl]");
assert.sameValue(Object.prototype.toString.call(Intl), "[object Intl]");
Object.defineProperty(Intl, Symbol.toStringTag, { value: "test262" });
assert.sameValue(Intl.toString(), "[object test262]");
assert.sameValue(Object.prototype.toString.call(Intl), "[object test262]");
assert(delete Intl[Symbol.toStringTag]);
assert.sameValue(Intl.toString(), "[object Object]");
assert.sameValue(Object.prototype.toString.call(Intl), "[object Object]");

View File

@ -0,0 +1,23 @@
// Copyright (C) 2020 Alexey Shvayka. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-Intl-toStringTag
description: >
Property descriptor of Intl[@@toStringTag].
info: |
Intl [ @@toStringTag ]
The initial value of the @@toStringTag property is the String value "Intl".
This property has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }.
features: [Symbol.toStringTag]
includes: [propertyHelper.js]
---*/
verifyProperty(Intl, Symbol.toStringTag, {
value: "Intl",
writable: false,
enumerable: false,
configurable: true,
});