@beinformed/ui 1.59.2 → 1.59.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,141 @@
1
+ import { TimestampUtil } from "../DateTimeUtil";
2
+ import { INCLUDE_TIME_OFFSET, setSettings } from "../../../constants";
3
+
4
+ const timestamp = "2023-06-07T07:04:01.010+02:00";
5
+
6
+ describe("date time format conversion", () => {
7
+ beforeEach(() => {
8
+ TimestampUtil.setTimeZone("Europe/Amsterdam");
9
+ setSettings({ [INCLUDE_TIME_OFFSET]: true });
10
+ });
11
+
12
+ test("Year", () => {
13
+ expect(TimestampUtil.toFormat(timestamp, "yy")).toBe("23");
14
+ expect(TimestampUtil.toFormat(timestamp, "yyyy")).toBe("2023");
15
+ });
16
+
17
+ test("Month", () => {
18
+ expect(TimestampUtil.toFormat(timestamp, "M")).toBe("6");
19
+ expect(TimestampUtil.toFormat(timestamp, "MM")).toBe("06");
20
+ expect(TimestampUtil.toFormat(timestamp, "MMM")).toBe("Jun");
21
+ expect(TimestampUtil.toFormat(timestamp, "MMMM")).toBe("June");
22
+ expect(TimestampUtil.toFormat(timestamp, "MMMMM")).toBe("J");
23
+
24
+ expect(TimestampUtil.toFormat(timestamp, "L")).toBe("6");
25
+ expect(TimestampUtil.toFormat(timestamp, "LL")).toBe("06");
26
+ expect(TimestampUtil.toFormat(timestamp, "LLL")).toBe("Jun");
27
+ expect(TimestampUtil.toFormat(timestamp, "LLLL")).toBe("June");
28
+ expect(TimestampUtil.toFormat(timestamp, "LLLLL")).toBe("J");
29
+ });
30
+
31
+ test("Day", () => {
32
+ expect(TimestampUtil.toFormat(timestamp, "d")).toBe("7");
33
+ expect(TimestampUtil.toFormat(timestamp, "dd")).toBe("07");
34
+ });
35
+
36
+ test("Quarter", () => {
37
+ expect(TimestampUtil.toFormat(timestamp, "Q")).toBe("2");
38
+ expect(TimestampUtil.toFormat(timestamp, "QQ")).toBe("02");
39
+ expect(TimestampUtil.toFormat(timestamp, "QQQ")).toBe("Q2");
40
+ expect(TimestampUtil.toFormat(timestamp, "QQQQ")).toBe("2nd quarter");
41
+ });
42
+
43
+ test.skip("Day of Year", () => {
44
+ expect(TimestampUtil.toFormat(timestamp, "D")).toBe("7");
45
+ expect(TimestampUtil.toFormat(timestamp, "DD")).toBe("07");
46
+ expect(TimestampUtil.toFormat(timestamp, "DDD")).toBe("07");
47
+ });
48
+
49
+ test("Day of Week", () => {
50
+ expect(TimestampUtil.toFormat(timestamp, "E")).toBe("Wed");
51
+ expect(TimestampUtil.toFormat(timestamp, "EEEE")).toBe("Wednesday");
52
+ expect(TimestampUtil.toFormat(timestamp, "EEEEE")).toBe("W");
53
+
54
+ expect(TimestampUtil.toFormat(timestamp, "e")).toBe("3");
55
+ expect(TimestampUtil.toFormat(timestamp, "ee")).toBe("03");
56
+ expect(TimestampUtil.toFormat(timestamp, "eee")).toBe("Wed");
57
+ expect(TimestampUtil.toFormat(timestamp, "eeee")).toBe("Wednesday");
58
+ expect(TimestampUtil.toFormat(timestamp, "eeeee")).toBe("W");
59
+ });
60
+
61
+ test("Week", () => {
62
+ expect(TimestampUtil.toFormat(timestamp, "w")).toBe("23");
63
+ // expect(TimestampUtil.toFormat(timestamp, "W")).toBe("23");
64
+ // expect(TimestampUtil.toFormat(timestamp, "F")).toBe("W");
65
+ });
66
+
67
+ test("Hour", () => {
68
+ expect(TimestampUtil.toFormat(timestamp, "H")).toBe("7");
69
+ expect(TimestampUtil.toFormat(timestamp, "HH")).toBe("07");
70
+ expect(TimestampUtil.toFormat(timestamp, "h")).toBe("7");
71
+ expect(TimestampUtil.toFormat(timestamp, "hh")).toBe("07");
72
+
73
+ expect(TimestampUtil.toFormat(timestamp, "a")).toBe("AM");
74
+ expect(TimestampUtil.toFormat(timestamp, "aa")).toBe("AM");
75
+ expect(TimestampUtil.toFormat(timestamp, "aaa")).toBe("am");
76
+ expect(TimestampUtil.toFormat(timestamp, "aaaa")).toBe("a.m.");
77
+ expect(TimestampUtil.toFormat(timestamp, "aaaaa")).toBe("a");
78
+
79
+ expect(TimestampUtil.toFormat(timestamp, "K")).toBe("7");
80
+ expect(TimestampUtil.toFormat(timestamp, "k")).toBe("7");
81
+ });
82
+
83
+ test("Minute", () => {
84
+ expect(TimestampUtil.toFormat(timestamp, "s")).toBe("1");
85
+ expect(TimestampUtil.toFormat(timestamp, "ss")).toBe("01");
86
+ });
87
+
88
+ test("Milliseconds", () => {
89
+ expect(TimestampUtil.toFormat(timestamp, "SSS")).toBe("010");
90
+ });
91
+
92
+ test("Zone / offset", () => {
93
+ expect(TimestampUtil.toFormat(timestamp, "z")).toBe("GMT+2");
94
+ expect(TimestampUtil.toFormat(timestamp, "zz")).toBe("GMT+2");
95
+ expect(TimestampUtil.toFormat(timestamp, "zzz")).toBe("GMT+2");
96
+ expect(TimestampUtil.toFormat(timestamp, "zzzz")).toBe("GMT+02:00");
97
+ expect(TimestampUtil.toFormat(timestamp, "zzzzz")).toBe("GMT+02:00");
98
+
99
+ expect(TimestampUtil.toFormat(timestamp, "X")).toBe("+02");
100
+ expect(TimestampUtil.toFormat(timestamp, "XX")).toBe("+0200");
101
+ expect(TimestampUtil.toFormat(timestamp, "XXX")).toBe("+02:00");
102
+
103
+ expect(TimestampUtil.toFormat(timestamp, "x")).toBe("+02");
104
+ expect(TimestampUtil.toFormat(timestamp, "xx")).toBe("+0200");
105
+ expect(TimestampUtil.toFormat(timestamp, "xxx")).toBe("+02:00");
106
+
107
+ expect(TimestampUtil.toFormat(timestamp, "O")).toBe("GMT+2");
108
+ expect(TimestampUtil.toFormat(timestamp, "OOOO")).toBe("GMT+02:00");
109
+
110
+ // expect(TimestampUtil.toFormat(timestamp, "VV")).toBe("GMT+02:00");
111
+ // expect(TimestampUtil.toFormat(timestamp, "V")).toBe("Europe/Amsterdam");
112
+ // expect(TimestampUtil.toFormat(timestamp, "Z")).toBe("+02:00");
113
+ // expect(TimestampUtil.toFormat(timestamp, "ZZZZ")).toBe("+02:00");
114
+ });
115
+
116
+ test("Era and Chronology", () => {
117
+ expect(TimestampUtil.toFormat(timestamp, "G")).toBe("AD");
118
+ expect(TimestampUtil.toFormat(timestamp, "GGGG")).toBe("Anno Domini");
119
+ expect(TimestampUtil.toFormat(timestamp, "GGGGG")).toBe("A");
120
+
121
+ expect(TimestampUtil.toFormat(timestamp, "u")).toBe("2023");
122
+ });
123
+
124
+ test("Converted", () => {
125
+ const ZZZ = TimestampUtil.convertFormat("ZZZ");
126
+ expect(TimestampUtil.toFormat(timestamp, ZZZ)).toBe("+02:00");
127
+
128
+ const ZZ = TimestampUtil.convertFormat("ZZ");
129
+ expect(TimestampUtil.toFormat(timestamp, ZZ)).toBe("+0200");
130
+
131
+ const Z = TimestampUtil.convertFormat("Z");
132
+ expect(TimestampUtil.toFormat(timestamp, Z)).toBe("+02");
133
+
134
+ const fullDateTime = TimestampUtil.convertFormat(
135
+ "EEE MMM dd, yyyy h:mma ZZ",
136
+ );
137
+ expect(TimestampUtil.toFormat(timestamp, fullDateTime)).toBe(
138
+ "Wed Jun 07, 2023 7:04AM +0200",
139
+ );
140
+ });
141
+ });