| // Copyright 2019 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-numberformat-unified |
| // Test precision of compact-rounding |
| |
| let compact = {notation: "compact"}; |
| assertEquals("1.2K", (1234).toLocaleString("en", compact)); |
| assertEquals("12K", (12345).toLocaleString("en", compact)); |
| assertEquals("123K", (123456).toLocaleString("en", compact)); |
| assertEquals("1.2M", (1234567).toLocaleString("en", compact)); |
| |
| assertEquals("54K", (54321).toLocaleString("en", compact)); |
| |
| let compact_no_rounding = {notation: "compact", minimumFractionDigits: 0}; |
| assertEquals("1.234K", (1234).toLocaleString("en", compact_no_rounding)); |
| assertEquals("12.345K", (12345).toLocaleString("en", compact_no_rounding)); |
| assertEquals("123.456K", (123456).toLocaleString("en", compact_no_rounding)); |
| assertEquals("1.235M", (1234567).toLocaleString("en", compact_no_rounding)); |
| |
| assertEquals("54.321K", (54321).toLocaleString("en", compact_no_rounding)); |
| |
| let fmt = new Intl.NumberFormat("en", compact_no_rounding); |
| assertEquals("1", fmt.format(1)); |
| assertEquals("1K", fmt.format(1000)); |
| assertEquals("1.234K", fmt.format(1234)); |
| assertEquals("1.25K", fmt.format(1250)); |