mirror of https://github.com/tc39/test262.git
Add tests for some NumberFormat options edge cases
Closes #888 These tests are regression tests for V8 failures at top of tree, https://bugs.chromium.org/p/v8/issues/detail?id=6015 https://bugs.chromium.org/p/v8/issues/detail?id=6016 Neither issue is present in JSC or SpiderMonkey. They are fixed by the V8 patch https://codereview.chromium.org/2717613005
This commit is contained in:
parent
333fa10c63
commit
a9d9ab1a51
|
@ -0,0 +1,21 @@
|
|||
// Copyright 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: sec-setnfdigitoptions
|
||||
description: >
|
||||
When a currency is used in Intl.NumberFormat and minimumFractionDigits is
|
||||
not provided, maximumFractionDigits should be range-checked against it.
|
||||
---*/
|
||||
|
||||
assert.throws(RangeError, () => new Intl.NumberFormat('en', {
|
||||
style: 'currency',
|
||||
currency: 'USD',
|
||||
maximumFractionDigits: 1
|
||||
}), 'CurrencyDigits(USD) == 1');
|
||||
|
||||
assert.throws(RangeError, () => new Intl.NumberFormat('en', {
|
||||
style: 'currency',
|
||||
currency: 'CLF',
|
||||
maximumFractionDigits: 4
|
||||
}), 'CurrencyDigits(CLF) == 4');
|
|
@ -0,0 +1,18 @@
|
|||
// Copyright 2017 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
esid: sec-setnfdigitoptions
|
||||
description: >
|
||||
The maximum and minimum fraction digits properties should be read from
|
||||
the options bag exactly once from the NumberFormat constructor.
|
||||
info: Regression test for https://bugs.chromium.org/p/v8/issues/detail?id=6015
|
||||
---*/
|
||||
|
||||
var calls = [];
|
||||
|
||||
new Intl.NumberFormat("en", { get minimumFractionDigits() { calls.push('minimumFractionDigits') },
|
||||
get maximumFractionDigits() { calls.push('maximumFractionDigits') } });
|
||||
assert.sameValue(calls.length, 2);
|
||||
assert.sameValue(calls[0], 'minimumFractionDigits');
|
||||
assert.sameValue(calls[1], 'maximumFractionDigits');
|
Loading…
Reference in New Issue