blob: d5cfb11345c717fdfe1d6567ef2e8c7251d3a02e [file] [log] [blame]
Kaido Kertf309f9a2021-04-30 12:09:15 -07001// Copyright 2019 the V8 project authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// Test precision of compact-rounding
6
7let compact = {notation: "compact"};
8assertEquals("1.2K", (1234).toLocaleString("en", compact));
9assertEquals("12K", (12345).toLocaleString("en", compact));
10assertEquals("123K", (123456).toLocaleString("en", compact));
11assertEquals("1.2M", (1234567).toLocaleString("en", compact));
12
13assertEquals("54K", (54321).toLocaleString("en", compact));
14
15let compact_no_rounding = {notation: "compact", minimumFractionDigits: 0};
16assertEquals("1.234K", (1234).toLocaleString("en", compact_no_rounding));
17assertEquals("12.345K", (12345).toLocaleString("en", compact_no_rounding));
18assertEquals("123.456K", (123456).toLocaleString("en", compact_no_rounding));
19assertEquals("1.235M", (1234567).toLocaleString("en", compact_no_rounding));
20
21assertEquals("54.321K", (54321).toLocaleString("en", compact_no_rounding));
22
23let fmt = new Intl.NumberFormat("en", compact_no_rounding);
24assertEquals("1", fmt.format(1));
25assertEquals("1K", fmt.format(1000));
26assertEquals("1.234K", fmt.format(1234));
27assertEquals("1.25K", fmt.format(1250));