mirror of https://github.com/tc39/test262.git
Add new test for receiver of toJSON on bigint values (#2079)
Spec link: https://tc39.github.io/proposal-bigint/#sec-serializejsonproperty Thanks to André Bargull for the test: https://bugzilla.mozilla.org/show_bug.cgi?id=1528784
This commit is contained in:
parent
565d7d5b7d
commit
298ad6907b
|
@ -0,0 +1,25 @@
|
|||
// Copyright 2019 Igalia, S.L. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
// Test case written by André Bargull.
|
||||
|
||||
/*---
|
||||
esid: sec-serializejsonproperty
|
||||
description: toJSON method called with BigInt as receiver
|
||||
features: [BigInt]
|
||||
---*/
|
||||
|
||||
assert.throws(TypeError, () => JSON.stringify(1n),
|
||||
"toString throws for BigInt object");
|
||||
|
||||
// The BigInt proposal changes the SerializeJSONProperty algorithm to
|
||||
// specifically allow passing BigInt objects as receivers for the toJSON
|
||||
// method.
|
||||
Object.defineProperty(BigInt.prototype, "toJSON", {
|
||||
get() {
|
||||
"use strict";
|
||||
return () => typeof this;
|
||||
}
|
||||
});
|
||||
|
||||
assert.sameValue(JSON.stringify(1n), "\"bigint\"",
|
||||
"BigInt toJSON method called with value as receiver");
|
Loading…
Reference in New Issue