File size: 975 Bytes
cf86710
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import type { Numerals } from "../types/shared.js";
import { DateLib } from "./DateLib.js";

const numeralCases: Array<[Numerals, string]> = [
  ["latn", "123"],
  ["arab", "١٢٣"],
  ["arabext", "۱۲۳"],
  ["deva", "१२३"],
  // Geez numerals are not supported by Intl.NumberFormat; DateLib falls back
  // to Latin digits for now when the locale does not provide them.
  ["geez", "123"],
  ["beng", "১২৩"],
  ["guru", "੧੨੩"],
  ["gujr", "૧૨૩"],
  ["orya", "୧୨୩"],
  ["tamldec", "௧௨௩"],
  ["telu", "౧౨౩"],
  ["knda", "೧೨೩"],
  ["mlym", "൧൨൩"],
  ["thai", "๑๒๓"],
  ["mymr", "၁၂၃"],
  ["khmr", "១២៣"],
  ["laoo", "໑໒໓"],
  ["tibt", "༡༢༣"],
];

describe("DateLib numerals", () => {
  test.each(
    numeralCases,
  )("formats numbers using %s digits", (numerals, expected) => {
    const dateLib = new DateLib({ numerals });
    expect(dateLib.formatNumber(123)).toBe(expected);
  });
});