summaryrefslogtreecommitdiffstats
path: root/devtools/client/shared/test/browser_num-l10n.js
blob: 0bdda44f5d518523ba05268881db81b87e36eccc (plain)
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */

"use strict";

// Tests that the localization utils work properly.

function test() {
  const l10n = new LocalizationHelper();

  is(
    l10n.numberWithDecimals(1234.56789, 2),
    "1,234.57",
    "The first number was properly localized."
  );
  is(
    l10n.numberWithDecimals(0.0001, 2),
    "0",
    "The second number was properly localized."
  );
  is(
    l10n.numberWithDecimals(1.0001, 2),
    "1",
    "The third number was properly localized."
  );
  is(l10n.numberWithDecimals(NaN, 2), "0", "NaN was properly localized.");
  is(l10n.numberWithDecimals(null, 2), "0", "`null` was properly localized.");
  is(
    l10n.numberWithDecimals(undefined, 2),
    "0",
    "`undefined` was properly localized."
  );
  is(
    l10n.numberWithDecimals(-1234.56789, 2),
    "-1,234.57",
    "Negative number was properly localized."
  );
  is(
    l10n.numberWithDecimals(1234.56789, 0),
    "1,235",
    "Number was properly localized with decimals set 0."
  );
  is(
    l10n.numberWithDecimals(-1234.56789, 0),
    "-1,235",
    "Negative number was properly localized with decimals set 0."
  );
  is(
    l10n.numberWithDecimals(12, 2),
    "12",
    "The integer was properly localized, without decimals."
  );
  is(
    l10n.numberWithDecimals(-12, 2),
    "-12",
    "The negative integer was properly localized, without decimals."
  );
  is(
    l10n.numberWithDecimals(1200, 2),
    "1,200",
    "The big integer was properly localized, no decimals but with a separator."
  );
  is(
    l10n.numberWithDecimals(-1200, 2),
    "-1,200",
    "The negative big integer was properly localized, no decimals but with a separator."
  );

  finish();
}