30 lines
1015 B
JavaScript
30 lines
1015 B
JavaScript
|
// Copyright 2021 the V8 project authors. All rights reserved.
|
||
|
// Use of this source code is governed by a BSD-style license that can be
|
||
|
// found in the LICENSE file.
|
||
|
//
|
||
|
// Flags: --harmony-intl-number-format-v3
|
||
|
|
||
|
// Test default.
|
||
|
let nf = new Intl.NumberFormat();
|
||
|
assertEquals("auto", nf.resolvedOptions().signDisplay);
|
||
|
|
||
|
nf = new Intl.NumberFormat("en");
|
||
|
assertEquals("auto", nf.resolvedOptions().signDisplay);
|
||
|
|
||
|
const testData = [
|
||
|
["auto", "-123", "-0", "0", "123"],
|
||
|
["always", "-123", "-0", "+0", "+123"],
|
||
|
["never", "123", "0", "0", "123"],
|
||
|
["exceptZero", "-123", "0", "0", "+123"],
|
||
|
["negative", "-123", "0", "0", "123"],
|
||
|
];
|
||
|
|
||
|
for (const [signDisplay, neg, negZero, zero, pos] of testData) {
|
||
|
nf = new Intl.NumberFormat("en", {signDisplay});
|
||
|
assertEquals(signDisplay, nf.resolvedOptions().signDisplay);
|
||
|
assertEquals(neg, nf.format(-123));
|
||
|
assertEquals(negZero, nf.format(-0));
|
||
|
assertEquals(zero, nf.format(0));
|
||
|
assertEquals(pos, nf.format(123));
|
||
|
}
|