name:
tests/Utilities/MoreUtilsTest.ts
-rw-r--r--
5874
1import {
2 assertEquals,
3 test
4} from "../Utils/Asserts";
5import {
6 isDefined,
7 isUndefined,
8 NumberStringBuilder
9} from "../../src/Utilities/MoreUtils";
10
11test("MoreUtils.isDefined", function () {
12 let und;
13 assertEquals(isDefined(und), false);
14 assertEquals(isDefined("10"), true);
15 assertEquals(isDefined(10), true);
16 assertEquals(isDefined(true), true);
17 assertEquals(isDefined(false), true);
18});
19
20test("MoreUtils.isUndefined", function () {
21 let und;
22 assertEquals(isUndefined(und), true);
23 assertEquals(isUndefined("10"), false);
24 assertEquals(isUndefined(10), false);
25 assertEquals(isUndefined(true), false);
26 assertEquals(isUndefined(false), false);
27});
28
29test("MoreUtils.NumberStringBuilder", function () {
30 assertEquals(NumberStringBuilder.start().number(12.3).integerZeros(2).decimalZeros(1).build(), "12.3");
31 assertEquals(NumberStringBuilder.start().number(0.01).integerZeros(2).decimalZeros(1).build(), "00.0");
32 assertEquals(NumberStringBuilder.start().number(12).integerZeros(2).decimalZeros(0).build(), "12");
33 assertEquals(NumberStringBuilder.start().number(12.3).integerZeros(2).decimalZeros(0).build(), "12");
34 assertEquals(NumberStringBuilder.start().number(12).integerZeros(2).decimalZeros(2).build(), "12.00");
35 assertEquals(NumberStringBuilder.start().number(0.99).integerZeros(1).decimalZeros(2).build(), "0.99");
36 assertEquals(NumberStringBuilder.start().number(0.99).integerZeros(2).decimalZeros(2).build(), "00.99");
37 assertEquals(NumberStringBuilder.start().number(0.99).integerZeros(4).decimalZeros(2).build(), "0000.99");
38 assertEquals(NumberStringBuilder.start().number(0.99).integerZeros(1).decimalZeros(4).build(), "0.9900");
39 assertEquals(NumberStringBuilder.start().number(0.99).integerZeros(1).decimalZeros(1).build(), "1.0");
40 assertEquals(NumberStringBuilder.start().number(0.88).integerZeros(1).decimalZeros(1).build(), "0.9");
41 assertEquals(NumberStringBuilder.start().number(0.99).integerZeros(0).decimalZeros(2).build(), ".99");
42 assertEquals(NumberStringBuilder.start().number(0.88).integerZeros(2).decimalZeros(1).build(), "00.9");
43 assertEquals(NumberStringBuilder.start().number(0.88).integerZeros(2).decimalZeros(2).build(), "00.88");
44 assertEquals(NumberStringBuilder.start().number(0.88).integerZeros(2).decimalZeros(3).build(), "00.880");
45 assertEquals(NumberStringBuilder.start().number(1.88).integerZeros(2).decimalZeros(3).build(), "01.880");
46 assertEquals(NumberStringBuilder.start().number(1.99).integerZeros(2).decimalZeros(1).build(), "02.0");
47
48 assertEquals(NumberStringBuilder.start().number(-12.3).integerZeros(2).decimalZeros(1).build(), "-12.3");
49 assertEquals(NumberStringBuilder.start().number(-0.01).integerZeros(2).decimalZeros(1).build(), "-00.0");
50 assertEquals(NumberStringBuilder.start().number(-12).integerZeros(2).decimalZeros(0).build(), "-12");
51 assertEquals(NumberStringBuilder.start().number(-12.3).integerZeros(2).decimalZeros(0).build(), "-12");
52 assertEquals(NumberStringBuilder.start().number(-12).integerZeros(2).decimalZeros(2).build(), "-12.00");
53 assertEquals(NumberStringBuilder.start().number(-0.99).integerZeros(1).decimalZeros(2).build(), "-0.99");
54 assertEquals(NumberStringBuilder.start().number(-0.99).integerZeros(2).decimalZeros(2).build(), "-00.99");
55 assertEquals(NumberStringBuilder.start().number(-0.99).integerZeros(4).decimalZeros(2).build(), "-0000.99");
56 assertEquals(NumberStringBuilder.start().number(-0.99).integerZeros(1).decimalZeros(4).build(), "-0.9900");
57 assertEquals(NumberStringBuilder.start().number(-0.99).integerZeros(1).decimalZeros(1).build(), "-1.0");
58 assertEquals(NumberStringBuilder.start().number(-0.88).integerZeros(1).decimalZeros(1).build(), "-0.9");
59 assertEquals(NumberStringBuilder.start().number(-0.99).integerZeros(0).decimalZeros(2).build(), "-.99");
60 assertEquals(NumberStringBuilder.start().number(-0.88).integerZeros(2).decimalZeros(1).build(), "-00.9");
61 assertEquals(NumberStringBuilder.start().number(-0.88).integerZeros(2).decimalZeros(2).build(), "-00.88");
62 assertEquals(NumberStringBuilder.start().number(-0.88).integerZeros(2).decimalZeros(3).build(), "-00.880");
63 assertEquals(NumberStringBuilder.start().number(-1.88).integerZeros(2).decimalZeros(3).build(), "-01.880");
64 assertEquals(NumberStringBuilder.start().number(-1.99).integerZeros(2).decimalZeros(1).build(), "-02.0");
65 assertEquals(NumberStringBuilder.start().number(-12).integerZeros(2).decimalZeros(0).tail("%").head("%").build(), "-%12%");
66
67
68 assertEquals(NumberStringBuilder.start().number(1234223.3324224).integerZeros(10).decimalZeros(1).build(), "0001234223.3");
69 assertEquals(NumberStringBuilder.start().number(12).integerZeros(2).decimalZeros(0).tail("%").head("%").build(), "%12%");
70 assertEquals(NumberStringBuilder.start().number(12.3).integerZeros(2).decimalZeros(1).tail("%").build(), "12.3%");
71 assertEquals(NumberStringBuilder.start().number(12.3).integerZeros(2).decimalZeros(1).head("%").build(), "%12.3");
72 assertEquals(NumberStringBuilder.start().number(12.3).integerZeros(2).decimalZeros(1).head("$+_").tail("$+_").build(), "$+_12.3$+_");
73 assertEquals(NumberStringBuilder.start().number(123456789).integerZeros(1).decimalZeros(1).commafy(true).build(), "123,456,789.0");
74 assertEquals(NumberStringBuilder.start().number(123456789.99).integerZeros(1).decimalZeros(1).commafy(true).build(), "123,456,790.0");
75 assertEquals(NumberStringBuilder.start().number(0.99).integerZeros(4).decimalZeros(2).commafy(true).build(), "0,000.99");
76
77 assertEquals(NumberStringBuilder.start().number(12.3).integerZeros(1).maximumDecimalPlaces(1).build(), "12.3");
78 assertEquals(NumberStringBuilder.start().number(12.33333).integerZeros(1).maximumDecimalPlaces(100).build(), "12.33333");
79 assertEquals(NumberStringBuilder.start().number(12.33).integerZeros(1).maximumDecimalPlaces(100).build(), "12.33");
80});