@dxc-technology/halstack-react 0.0.0-b22e2a8 → 0.0.0-b230d97

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.
Files changed (294) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -4
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +300 -0
  5. package/accordion/Accordion.d.ts +1 -1
  6. package/accordion/Accordion.js +119 -138
  7. package/accordion/Accordion.stories.tsx +395 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +12 -11
  10. package/accordion-group/AccordionGroup.d.ts +1 -1
  11. package/accordion-group/AccordionGroup.js +16 -37
  12. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  13. package/accordion-group/AccordionGroup.test.js +126 -0
  14. package/accordion-group/types.d.ts +17 -10
  15. package/alert/Alert.js +7 -4
  16. package/alert/Alert.test.js +92 -0
  17. package/badge/Badge.d.ts +4 -0
  18. package/badge/Badge.js +6 -4
  19. package/badge/types.d.ts +5 -0
  20. package/{radio → badge}/types.js +0 -0
  21. package/bleed/Bleed.d.ts +3 -0
  22. package/bleed/Bleed.js +51 -0
  23. package/bleed/Bleed.stories.tsx +341 -0
  24. package/bleed/types.d.ts +37 -0
  25. package/bleed/types.js +5 -0
  26. package/box/Box.js +25 -35
  27. package/box/Box.test.js +18 -0
  28. package/box/types.d.ts +1 -0
  29. package/bulleted-list/BulletedList.d.ts +7 -0
  30. package/bulleted-list/BulletedList.js +123 -0
  31. package/bulleted-list/BulletedList.stories.tsx +200 -0
  32. package/bulleted-list/types.d.ts +11 -0
  33. package/bulleted-list/types.js +5 -0
  34. package/button/Button.d.ts +1 -1
  35. package/button/Button.js +59 -82
  36. package/button/Button.stories.tsx +163 -14
  37. package/button/Button.test.js +35 -0
  38. package/button/types.d.ts +10 -14
  39. package/card/Card.js +25 -28
  40. package/card/Card.stories.tsx +1 -1
  41. package/card/Card.test.js +50 -0
  42. package/card/types.d.ts +1 -0
  43. package/checkbox/Checkbox.d.ts +2 -2
  44. package/checkbox/Checkbox.js +108 -111
  45. package/checkbox/Checkbox.stories.tsx +198 -130
  46. package/checkbox/Checkbox.test.js +155 -0
  47. package/checkbox/types.d.ts +14 -6
  48. package/chip/Chip.d.ts +4 -0
  49. package/chip/Chip.js +22 -88
  50. package/chip/Chip.stories.tsx +98 -13
  51. package/chip/Chip.test.js +56 -0
  52. package/chip/types.d.ts +45 -0
  53. package/chip/types.js +5 -0
  54. package/common/variables.js +511 -569
  55. package/date-input/Calendar.d.ts +4 -0
  56. package/date-input/Calendar.js +258 -0
  57. package/date-input/DateInput.js +174 -266
  58. package/date-input/DateInput.stories.tsx +137 -38
  59. package/date-input/DateInput.test.js +835 -0
  60. package/date-input/DatePicker.d.ts +4 -0
  61. package/date-input/DatePicker.js +146 -0
  62. package/date-input/Icons.d.ts +6 -0
  63. package/date-input/Icons.js +75 -0
  64. package/date-input/YearPicker.d.ts +4 -0
  65. package/date-input/YearPicker.js +126 -0
  66. package/date-input/types.d.ts +67 -9
  67. package/dialog/Dialog.js +50 -53
  68. package/dialog/Dialog.stories.tsx +57 -2
  69. package/dialog/Dialog.test.js +70 -0
  70. package/dialog/types.d.ts +3 -2
  71. package/dropdown/Dropdown.d.ts +1 -1
  72. package/dropdown/Dropdown.js +248 -277
  73. package/dropdown/Dropdown.stories.tsx +438 -0
  74. package/dropdown/Dropdown.test.js +585 -0
  75. package/dropdown/DropdownMenu.d.ts +4 -0
  76. package/dropdown/DropdownMenu.js +70 -0
  77. package/dropdown/DropdownMenuItem.d.ts +4 -0
  78. package/dropdown/DropdownMenuItem.js +81 -0
  79. package/dropdown/types.d.ts +30 -19
  80. package/file-input/FileInput.d.ts +2 -2
  81. package/file-input/FileInput.js +182 -142
  82. package/file-input/FileInput.stories.tsx +618 -0
  83. package/file-input/FileInput.test.js +498 -0
  84. package/file-input/FileItem.d.ts +4 -14
  85. package/file-input/FileItem.js +46 -67
  86. package/file-input/types.d.ts +49 -7
  87. package/flex/Flex.d.ts +4 -0
  88. package/flex/Flex.js +69 -0
  89. package/flex/Flex.stories.tsx +103 -0
  90. package/flex/types.d.ts +32 -0
  91. package/flex/types.js +5 -0
  92. package/footer/Footer.d.ts +1 -1
  93. package/footer/Footer.js +32 -113
  94. package/footer/Footer.stories.tsx +228 -0
  95. package/footer/Footer.test.js +109 -0
  96. package/footer/Icons.d.ts +2 -0
  97. package/footer/Icons.js +4 -4
  98. package/footer/types.d.ts +22 -17
  99. package/header/Header.js +109 -130
  100. package/header/Header.stories.tsx +167 -36
  101. package/header/Header.test.js +79 -0
  102. package/header/Icons.d.ts +2 -0
  103. package/header/Icons.js +2 -2
  104. package/header/types.d.ts +3 -2
  105. package/heading/Heading.js +1 -1
  106. package/heading/Heading.stories.tsx +3 -2
  107. package/heading/Heading.test.js +186 -0
  108. package/inset/Inset.d.ts +3 -0
  109. package/inset/Inset.js +51 -0
  110. package/inset/Inset.stories.tsx +229 -0
  111. package/inset/types.d.ts +37 -0
  112. package/inset/types.js +5 -0
  113. package/layout/ApplicationLayout.d.ts +20 -0
  114. package/layout/ApplicationLayout.js +71 -135
  115. package/layout/ApplicationLayout.stories.tsx +162 -0
  116. package/layout/Icons.d.ts +5 -0
  117. package/layout/Icons.js +13 -2
  118. package/layout/SidenavContext.d.ts +5 -0
  119. package/layout/SidenavContext.js +19 -0
  120. package/layout/types.d.ts +42 -0
  121. package/layout/types.js +5 -0
  122. package/link/Link.d.ts +3 -2
  123. package/link/Link.js +62 -87
  124. package/link/Link.stories.tsx +99 -52
  125. package/link/Link.test.js +83 -0
  126. package/link/types.d.ts +9 -29
  127. package/main.d.ts +12 -12
  128. package/main.js +64 -58
  129. package/number-input/NumberInput.js +14 -24
  130. package/number-input/NumberInput.stories.tsx +5 -5
  131. package/number-input/NumberInput.test.js +542 -0
  132. package/number-input/types.d.ts +17 -10
  133. package/package.json +21 -22
  134. package/paginator/Icons.d.ts +5 -0
  135. package/paginator/Icons.js +16 -28
  136. package/paginator/Paginator.js +21 -54
  137. package/paginator/Paginator.stories.tsx +24 -0
  138. package/paginator/Paginator.test.js +315 -0
  139. package/paragraph/Paragraph.d.ts +6 -0
  140. package/paragraph/Paragraph.js +38 -0
  141. package/paragraph/Paragraph.stories.tsx +44 -0
  142. package/password-input/PasswordInput.js +23 -19
  143. package/password-input/PasswordInput.stories.tsx +3 -3
  144. package/password-input/PasswordInput.test.js +181 -0
  145. package/password-input/types.d.ts +26 -21
  146. package/progress-bar/ProgressBar.d.ts +2 -2
  147. package/progress-bar/ProgressBar.js +59 -53
  148. package/progress-bar/ProgressBar.stories.jsx +45 -12
  149. package/progress-bar/ProgressBar.test.js +110 -0
  150. package/progress-bar/types.d.ts +3 -4
  151. package/quick-nav/QuickNav.d.ts +4 -0
  152. package/quick-nav/QuickNav.js +117 -0
  153. package/quick-nav/QuickNav.stories.tsx +356 -0
  154. package/quick-nav/types.d.ts +21 -0
  155. package/quick-nav/types.js +5 -0
  156. package/radio-group/Radio.d.ts +4 -0
  157. package/radio-group/Radio.js +156 -0
  158. package/radio-group/RadioGroup.d.ts +4 -0
  159. package/radio-group/RadioGroup.js +283 -0
  160. package/radio-group/RadioGroup.stories.tsx +214 -0
  161. package/radio-group/RadioGroup.test.js +722 -0
  162. package/radio-group/types.d.ts +114 -0
  163. package/radio-group/types.js +5 -0
  164. package/resultsetTable/Icons.d.ts +7 -0
  165. package/resultsetTable/Icons.js +51 -0
  166. package/resultsetTable/ResultsetTable.d.ts +1 -1
  167. package/resultsetTable/ResultsetTable.js +53 -107
  168. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  169. package/resultsetTable/ResultsetTable.test.js +325 -0
  170. package/resultsetTable/types.d.ts +8 -4
  171. package/select/Icons.d.ts +10 -0
  172. package/select/Icons.js +93 -0
  173. package/select/Listbox.d.ts +4 -0
  174. package/select/Listbox.js +169 -0
  175. package/select/Option.d.ts +4 -0
  176. package/select/Option.js +97 -0
  177. package/select/Select.d.ts +4 -0
  178. package/select/Select.js +196 -397
  179. package/select/Select.stories.tsx +600 -201
  180. package/select/Select.test.js +2228 -0
  181. package/select/types.d.ts +210 -0
  182. package/select/types.js +5 -0
  183. package/sidenav/Sidenav.d.ts +6 -5
  184. package/sidenav/Sidenav.js +184 -54
  185. package/sidenav/Sidenav.stories.tsx +249 -132
  186. package/sidenav/Sidenav.test.js +44 -0
  187. package/sidenav/types.d.ts +50 -27
  188. package/slider/Slider.d.ts +2 -2
  189. package/slider/Slider.js +124 -98
  190. package/slider/Slider.stories.tsx +72 -9
  191. package/slider/Slider.test.js +250 -0
  192. package/slider/types.d.ts +10 -2
  193. package/spinner/Spinner.js +5 -5
  194. package/spinner/Spinner.stories.jsx +27 -0
  195. package/spinner/Spinner.test.js +64 -0
  196. package/switch/Switch.d.ts +2 -2
  197. package/switch/Switch.js +152 -69
  198. package/switch/Switch.stories.tsx +54 -43
  199. package/switch/Switch.test.js +225 -0
  200. package/switch/types.d.ts +12 -4
  201. package/table/Table.js +3 -3
  202. package/table/Table.stories.jsx +81 -1
  203. package/table/Table.test.js +26 -0
  204. package/tabs/Tab.d.ts +4 -0
  205. package/tabs/Tab.js +133 -0
  206. package/tabs/Tabs.d.ts +1 -1
  207. package/tabs/Tabs.js +364 -110
  208. package/tabs/Tabs.stories.tsx +226 -0
  209. package/tabs/Tabs.test.js +351 -0
  210. package/tabs/types.d.ts +39 -17
  211. package/tabs-nav/NavTabs.d.ts +8 -0
  212. package/tabs-nav/NavTabs.js +125 -0
  213. package/tabs-nav/NavTabs.stories.tsx +172 -0
  214. package/tabs-nav/NavTabs.test.js +82 -0
  215. package/tabs-nav/Tab.d.ts +4 -0
  216. package/tabs-nav/Tab.js +128 -0
  217. package/tabs-nav/types.d.ts +53 -0
  218. package/tabs-nav/types.js +5 -0
  219. package/tag/Tag.d.ts +1 -1
  220. package/tag/Tag.js +19 -29
  221. package/tag/Tag.stories.tsx +26 -29
  222. package/tag/Tag.test.js +60 -0
  223. package/tag/types.d.ts +23 -14
  224. package/text-input/Icons.d.ts +8 -0
  225. package/text-input/Icons.js +60 -0
  226. package/text-input/Suggestion.d.ts +4 -0
  227. package/text-input/Suggestion.js +84 -0
  228. package/text-input/Suggestions.d.ts +4 -0
  229. package/text-input/Suggestions.js +134 -0
  230. package/text-input/TextInput.js +231 -343
  231. package/text-input/TextInput.stories.tsx +569 -0
  232. package/text-input/TextInput.test.js +1724 -0
  233. package/text-input/types.d.ts +63 -23
  234. package/textarea/Textarea.d.ts +4 -0
  235. package/textarea/Textarea.js +39 -79
  236. package/textarea/Textarea.stories.jsx +37 -15
  237. package/textarea/Textarea.test.js +437 -0
  238. package/textarea/types.d.ts +137 -0
  239. package/textarea/types.js +5 -0
  240. package/toggle-group/ToggleGroup.d.ts +4 -0
  241. package/toggle-group/ToggleGroup.js +18 -46
  242. package/toggle-group/ToggleGroup.stories.tsx +69 -32
  243. package/toggle-group/ToggleGroup.test.js +156 -0
  244. package/toggle-group/types.d.ts +105 -0
  245. package/toggle-group/types.js +5 -0
  246. package/typography/Typography.d.ts +4 -0
  247. package/typography/Typography.js +131 -0
  248. package/typography/Typography.stories.tsx +198 -0
  249. package/typography/types.d.ts +18 -0
  250. package/typography/types.js +5 -0
  251. package/useTheme.d.ts +2 -0
  252. package/useTheme.js +2 -2
  253. package/useTranslatedLabels.d.ts +2 -0
  254. package/useTranslatedLabels.js +20 -0
  255. package/wizard/Wizard.d.ts +1 -1
  256. package/wizard/Wizard.js +112 -58
  257. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +48 -19
  258. package/wizard/Wizard.test.js +141 -0
  259. package/wizard/types.d.ts +13 -12
  260. package/ThemeContext.js +0 -246
  261. package/V3Select/V3Select.js +0 -455
  262. package/V3Select/index.d.ts +0 -27
  263. package/V3Textarea/V3Textarea.js +0 -260
  264. package/V3Textarea/index.d.ts +0 -27
  265. package/chip/index.d.ts +0 -22
  266. package/common/RequiredComponent.js +0 -32
  267. package/date/Date.js +0 -373
  268. package/date/index.d.ts +0 -27
  269. package/footer/Footer.stories.jsx +0 -151
  270. package/input-text/Icons.js +0 -22
  271. package/input-text/InputText.js +0 -611
  272. package/input-text/index.d.ts +0 -36
  273. package/radio/Radio.d.ts +0 -4
  274. package/radio/Radio.js +0 -174
  275. package/radio/Radio.stories.tsx +0 -192
  276. package/radio/types.d.ts +0 -54
  277. package/select/index.d.ts +0 -131
  278. package/textarea/index.d.ts +0 -117
  279. package/toggle/Toggle.js +0 -186
  280. package/toggle/index.d.ts +0 -21
  281. package/toggle-group/index.d.ts +0 -21
  282. package/upload/Upload.js +0 -201
  283. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  284. package/upload/buttons-upload/Icons.js +0 -40
  285. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  286. package/upload/dragAndDropArea/Icons.js +0 -39
  287. package/upload/file-upload/FileToUpload.js +0 -115
  288. package/upload/file-upload/Icons.js +0 -66
  289. package/upload/files-upload/FilesToUpload.js +0 -109
  290. package/upload/index.d.ts +0 -15
  291. package/upload/transaction/Icons.js +0 -160
  292. package/upload/transaction/Transaction.js +0 -104
  293. package/upload/transactions/Transactions.js +0 -94
  294. package/wizard/Icons.js +0 -65
@@ -0,0 +1,835 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
6
+
7
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
8
+
9
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
+
11
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
+
13
+ var _react = _interopRequireDefault(require("react"));
14
+
15
+ var _react2 = require("@testing-library/react");
16
+
17
+ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
18
+
19
+ var _dayjs = _interopRequireDefault(require("dayjs"));
20
+
21
+ var _DateInput = _interopRequireDefault(require("./DateInput.tsx"));
22
+
23
+ // Mocking DOMRect for Radix Primitive Popover
24
+ global.globalThis = global;
25
+
26
+ global.ResizeObserver = /*#__PURE__*/function () {
27
+ function ResizeObserver(cb) {
28
+ (0, _classCallCheck2["default"])(this, ResizeObserver);
29
+ this.cb = cb;
30
+ }
31
+
32
+ (0, _createClass2["default"])(ResizeObserver, [{
33
+ key: "observe",
34
+ value: function observe() {
35
+ this.cb([{
36
+ borderBoxSize: {
37
+ inlineSize: 0,
38
+ blockSize: 0
39
+ }
40
+ }]);
41
+ }
42
+ }, {
43
+ key: "unobserve",
44
+ value: function unobserve() {}
45
+ }]);
46
+ return ResizeObserver;
47
+ }();
48
+
49
+ global.DOMRect = {
50
+ fromRect: function fromRect() {
51
+ return {
52
+ top: 0,
53
+ left: 0,
54
+ bottom: 0,
55
+ right: 0,
56
+ width: 0,
57
+ height: 0
58
+ };
59
+ }
60
+ };
61
+ describe("DateInput component tests", function () {
62
+ test("Renders with correct label, helper text, optional, placeholder and clearable action", function () {
63
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
64
+ label: "Example label",
65
+ helperText: "Example of helper text",
66
+ placeholder: true,
67
+ optional: true,
68
+ clearable: true
69
+ })),
70
+ getByText = _render.getByText,
71
+ getByRole = _render.getByRole,
72
+ getAllByRole = _render.getAllByRole;
73
+
74
+ var input = getByRole("textbox");
75
+ expect(getByText("Example label")).toBeTruthy();
76
+ expect(getByText("Example of helper text")).toBeTruthy();
77
+ expect(getByText("(Optional)")).toBeTruthy();
78
+ expect(input.getAttribute("placeholder")).toBe("DD-MM-YYYY");
79
+
80
+ _userEvent["default"].type(input, "10/10/2010");
81
+
82
+ var closeAction = getAllByRole("button")[0];
83
+
84
+ _userEvent["default"].click(closeAction);
85
+
86
+ expect(input.value).toBe("");
87
+ });
88
+ test("Renders with custom error", function () {
89
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
90
+ error: "Personalized error."
91
+ })),
92
+ getByText = _render2.getByText;
93
+
94
+ expect(getByText("Personalized error.")).toBeTruthy();
95
+ });
96
+ test("Renders with an initial value when it is uncontrolled", function () {
97
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
98
+ label: "Default label",
99
+ placeholder: "Placeholder",
100
+ defaultValue: "21-10-2015"
101
+ })),
102
+ getByText = _render3.getByText,
103
+ getByRole = _render3.getByRole;
104
+
105
+ var input = getByRole("textbox");
106
+ var calendarAction = getByRole("combobox");
107
+ expect(input.value).toBe("21-10-2015");
108
+
109
+ _userEvent["default"].click(calendarAction);
110
+
111
+ expect(getByText("21").getAttribute("aria-selected")).toBe("true");
112
+ expect(getByText("October 2015")).toBeTruthy();
113
+ });
114
+ test("Renders with correct format: user typed date but it's invalid, onBlur error", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
115
+ var onBlur, _render4, getByRole, input;
116
+
117
+ return _regenerator["default"].wrap(function _callee$(_context) {
118
+ while (1) {
119
+ switch (_context.prev = _context.next) {
120
+ case 0:
121
+ onBlur = jest.fn(function (_ref2) {
122
+ var value = _ref2.value,
123
+ error = _ref2.error;
124
+ expect(value).toBe("10/90/2010");
125
+ expect(error).toBe("Invalid date.");
126
+ });
127
+ _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
128
+ label: "With format MM/dd/yyyy",
129
+ format: "MM/dd/yyyy",
130
+ onBlur: onBlur
131
+ })), getByRole = _render4.getByRole;
132
+ input = getByRole("textbox");
133
+
134
+ _userEvent["default"].click(input);
135
+
136
+ _context.next = 6;
137
+ return _userEvent["default"].keyboard("10");
138
+
139
+ case 6:
140
+ _context.next = 8;
141
+ return _userEvent["default"].keyboard("/");
142
+
143
+ case 8:
144
+ _context.next = 10;
145
+ return _userEvent["default"].keyboard("90");
146
+
147
+ case 10:
148
+ _context.next = 12;
149
+ return _userEvent["default"].keyboard("/");
150
+
151
+ case 12:
152
+ _context.next = 14;
153
+ return _userEvent["default"].keyboard("2010");
154
+
155
+ case 14:
156
+ _react2.fireEvent.blur(input);
157
+
158
+ case 15:
159
+ case "end":
160
+ return _context.stop();
161
+ }
162
+ }
163
+ }, _callee);
164
+ })));
165
+ test("Renders with correct format: user typed date but it's invalid, onChange error", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
166
+ var onChange, _render5, getByRole, input;
167
+
168
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
169
+ while (1) {
170
+ switch (_context2.prev = _context2.next) {
171
+ case 0:
172
+ onChange = jest.fn();
173
+ _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
174
+ label: "With format MM/dd/yyyy",
175
+ format: "MM/dd/yyyy",
176
+ onChange: onChange
177
+ })), getByRole = _render5.getByRole;
178
+ input = getByRole("textbox");
179
+
180
+ _userEvent["default"].click(input);
181
+
182
+ _context2.next = 6;
183
+ return _userEvent["default"].keyboard("10");
184
+
185
+ case 6:
186
+ _context2.next = 8;
187
+ return _userEvent["default"].keyboard("/");
188
+
189
+ case 8:
190
+ _context2.next = 10;
191
+ return _userEvent["default"].keyboard("90");
192
+
193
+ case 10:
194
+ _context2.next = 12;
195
+ return _userEvent["default"].keyboard("/");
196
+
197
+ case 12:
198
+ _context2.next = 14;
199
+ return _userEvent["default"].keyboard("2010");
200
+
201
+ case 14:
202
+ expect(onChange).toHaveBeenCalledTimes(10);
203
+ expect(onChange).toHaveBeenCalledWith({
204
+ value: "10/90/2010",
205
+ error: "Invalid date."
206
+ });
207
+
208
+ case 16:
209
+ case "end":
210
+ return _context2.stop();
211
+ }
212
+ }
213
+ }, _callee2);
214
+ })));
215
+ test("Calendar renders with correct date: today's date", function () {
216
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], null)),
217
+ getByText = _render6.getByText,
218
+ getByRole = _render6.getByRole,
219
+ getAllByText = _render6.getAllByText;
220
+
221
+ var calendarAction = getByRole("combobox");
222
+ var d = (0, _dayjs["default"])();
223
+
224
+ _userEvent["default"].click(calendarAction);
225
+
226
+ expect(document.activeElement === getAllByText(d.get("date")).length === 2 && +d.get("date") > 20 ? getAllByText(d.get("date"))[1] : getAllByText(d.get("date"))[0]).toBeTruthy();
227
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
228
+ });
229
+ test("Calendar renders with correct date: value prop", function () {
230
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
231
+ value: "20-10-2019"
232
+ })),
233
+ getByText = _render7.getByText,
234
+ getByRole = _render7.getByRole,
235
+ getAllByText = _render7.getAllByText;
236
+
237
+ var calendarAction = getByRole("combobox");
238
+ var d = (0, _dayjs["default"])("2019-10-20");
239
+
240
+ _userEvent["default"].click(calendarAction);
241
+
242
+ expect(getAllByText(d.get("date"))[0].getAttribute("aria-selected")).toBe("true");
243
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
244
+ });
245
+ test("Calendar renders with correct date: user typed value", function () {
246
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], null)),
247
+ getByText = _render8.getByText,
248
+ getByRole = _render8.getByRole,
249
+ getAllByText = _render8.getAllByText;
250
+
251
+ var calendarAction = getByRole("combobox");
252
+ var d = (0, _dayjs["default"])("2010-1-1");
253
+ var input = getByRole("textbox");
254
+
255
+ _userEvent["default"].type(input, "01-01-2010");
256
+
257
+ _userEvent["default"].click(calendarAction);
258
+
259
+ expect(getAllByText(d.get("date"))[0].getAttribute("aria-selected")).toBe("true");
260
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
261
+ });
262
+ test("Calendar renders with correct date: invalid date, renders with today's date", function () {
263
+ var onBlur = jest.fn();
264
+
265
+ var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
266
+ onBlur: onBlur
267
+ })),
268
+ getByText = _render9.getByText,
269
+ getByRole = _render9.getByRole,
270
+ getAllByText = _render9.getAllByText;
271
+
272
+ var calendarAction = getByRole("combobox");
273
+ var d = (0, _dayjs["default"])();
274
+ var input = getByRole("textbox");
275
+
276
+ _userEvent["default"].type(input, "01-01-xxxx");
277
+
278
+ _react2.fireEvent.blur(input);
279
+
280
+ expect(onBlur).toHaveBeenCalled();
281
+ expect(onBlur).toHaveBeenCalledWith({
282
+ value: "01-01-xxxx",
283
+ error: "Invalid date."
284
+ });
285
+
286
+ _userEvent["default"].click(calendarAction);
287
+
288
+ expect(document.activeElement === getAllByText(d.get("date")).length === 2 && +d.get("date") > 20 ? getAllByText(d.get("date"))[1] : getAllByText(d.get("date"))[0]).toBeTruthy();
289
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
290
+ });
291
+ test("Selecting a date from the calendar with an specific format", function () {
292
+ var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
293
+ label: "With format M-dd-yyyy",
294
+ format: "M-dd-yyyy"
295
+ })),
296
+ getAllByText = _render10.getAllByText,
297
+ getByText = _render10.getByText,
298
+ getByRole = _render10.getByRole;
299
+
300
+ var input = getByRole("textbox");
301
+ var calendarAction = getByRole("combobox");
302
+
303
+ _userEvent["default"].click(calendarAction);
304
+
305
+ var dayButton = getAllByText("10")[0].closest("button");
306
+
307
+ _react2.fireEvent.click(dayButton);
308
+
309
+ var d = (0, _dayjs["default"])();
310
+ d = d.set("date", 10);
311
+ expect(getAllByText(d.get("date"))[0].getAttribute("aria-selected")).toBe("true");
312
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
313
+
314
+ _react2.fireEvent.keyDown(document, {
315
+ key: "Escape",
316
+ code: "Escape",
317
+ keyCode: 27,
318
+ charCode: 27
319
+ });
320
+
321
+ expect(input.value).toBe(d.format("M-DD-YYYY"));
322
+ });
323
+ test("Changing months using the arrows", function () {
324
+ var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
325
+ label: "label",
326
+ format: "dd-mm-yyyy",
327
+ defaultValue: "10-10-2000"
328
+ })),
329
+ getByText = _render11.getByText,
330
+ getByRole = _render11.getByRole,
331
+ getByTitle = _render11.getByTitle;
332
+
333
+ var calendarAction = getByRole("combobox");
334
+
335
+ _userEvent["default"].click(calendarAction);
336
+
337
+ var d = (0, _dayjs["default"])("10-10-2000", "DD-MM-YYYY", true);
338
+ d = d.set("date", 10);
339
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
340
+ var previousMonth = getByTitle("Previous month");
341
+
342
+ _userEvent["default"].click(previousMonth);
343
+
344
+ expect(getByText(d.set("month", d.get("month") - 1).format("MMMM YYYY"))).toBeTruthy();
345
+ var nextMonth = getByTitle("Next month");
346
+
347
+ _userEvent["default"].click(nextMonth);
348
+
349
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
350
+ });
351
+ test("Selecting a date from the calendar from another month", function () {
352
+ var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
353
+ format: "dd-mm-yyyy",
354
+ defaultValue: "10-08-2021"
355
+ })),
356
+ getAllByText = _render12.getAllByText,
357
+ getByText = _render12.getByText,
358
+ getByRole = _render12.getByRole;
359
+
360
+ var input = getByRole("textbox");
361
+ var calendarAction = getByRole("combobox");
362
+
363
+ _userEvent["default"].click(calendarAction);
364
+
365
+ var dayButton = getAllByText("31")[0].closest("button");
366
+
367
+ _react2.fireEvent.click(dayButton);
368
+
369
+ var d = (0, _dayjs["default"])("10-08-2021", "DD-MM-YYYY", true);
370
+ d = d.set("date", 31).set("month", 6);
371
+ expect(getAllByText(d.get("date"))[0].getAttribute("aria-selected")).toBe("true");
372
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
373
+
374
+ _react2.fireEvent.keyDown(document, {
375
+ key: "Escape",
376
+ code: "Escape",
377
+ keyCode: 27,
378
+ charCode: 27
379
+ });
380
+
381
+ expect(input.value).toBe(d.format("DD-MM-YYYY"));
382
+ });
383
+ test("Selecting a year from the calendar year picker", function () {
384
+ var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
385
+ format: "dd-mm-yyyy",
386
+ defaultValue: "10-08-2021"
387
+ })),
388
+ getByText = _render13.getByText,
389
+ getByRole = _render13.getByRole;
390
+
391
+ var input = getByRole("textbox");
392
+ var calendarAction = getByRole("combobox");
393
+
394
+ _userEvent["default"].click(calendarAction);
395
+
396
+ var d = (0, _dayjs["default"])("10-08-2021", "DD-MM-YYYY", true);
397
+
398
+ _userEvent["default"].click(getByText(d.format("MMMM YYYY")));
399
+
400
+ expect(getByText("2024")).toBeTruthy();
401
+
402
+ _userEvent["default"].click(getByText("2024"));
403
+
404
+ _userEvent["default"].click(getByText(d.set("year", 2024).format("MMMM YYYY")));
405
+
406
+ _react2.fireEvent.keyDown(document, {
407
+ key: "Escape",
408
+ code: "Escape",
409
+ keyCode: 27,
410
+ charCode: 27
411
+ });
412
+
413
+ expect(input.value).toBe(d.format("DD-MM-YYYY"));
414
+ });
415
+ test("Selecting a date from the calendar (using keyboard presses)", function () {
416
+ var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], null)),
417
+ getByRole = _render14.getByRole,
418
+ getAllByText = _render14.getAllByText,
419
+ getByText = _render14.getByText;
420
+
421
+ var calendarAction = getByRole("combobox");
422
+ var input = getByRole("textbox");
423
+
424
+ _userEvent["default"].type(input, "01-01-2010");
425
+
426
+ expect(input.value).toBe("01-01-2010");
427
+
428
+ _userEvent["default"].click(calendarAction);
429
+
430
+ expect(document.activeElement === getAllByText("1")[0].closest("button")).toBeTruthy();
431
+
432
+ _react2.fireEvent.keyDown(getAllByText("1")[0].closest("button"), {
433
+ key: "ArrowRight",
434
+ code: "ArrowRight",
435
+ keyCode: 39,
436
+ charCode: 39
437
+ });
438
+
439
+ expect(document.activeElement === getAllByText("2")[0].closest("button")).toBeTruthy();
440
+
441
+ _react2.fireEvent.keyDown(getAllByText("2")[0].closest("button"), {
442
+ key: "PageUp",
443
+ code: "PageUp",
444
+ keyCode: 33,
445
+ charCode: 33
446
+ });
447
+
448
+ expect(document.activeElement === getAllByText("2")[0].closest("button")).toBeTruthy();
449
+ expect(getByText("December 2009")).toBeTruthy();
450
+
451
+ _react2.fireEvent.keyDown(getAllByText("2")[0].closest("button"), {
452
+ key: "PageDown",
453
+ code: "PageDown",
454
+ keyCode: 34,
455
+ charCode: 34
456
+ });
457
+
458
+ expect(document.activeElement === getAllByText("2")[0].closest("button")).toBeTruthy();
459
+ expect(getByText("January 2010")).toBeTruthy();
460
+
461
+ _react2.fireEvent.keyDown(getAllByText("2")[0].closest("button"), {
462
+ key: "PageDown",
463
+ code: "PageDown",
464
+ keyCode: 34,
465
+ charCode: 34,
466
+ shiftKey: true
467
+ });
468
+
469
+ expect(getByText("January 2011")).toBeTruthy();
470
+
471
+ _react2.fireEvent.keyDown(getAllByText("2")[0].closest("button"), {
472
+ key: "PageUp",
473
+ code: "PageUp",
474
+ keyCode: 33,
475
+ charCode: 33,
476
+ shiftKey: true
477
+ });
478
+
479
+ expect(getByText("January 2010")).toBeTruthy();
480
+ expect(document.activeElement === getAllByText("2")[0].closest("button")).toBeTruthy();
481
+
482
+ _react2.fireEvent.click(getAllByText("2")[0].closest("button"), {
483
+ key: " ",
484
+ code: "Space",
485
+ keyCode: 32,
486
+ charCode: 32
487
+ });
488
+
489
+ expect(getAllByText("2")[0].closest("button").getAttribute("aria-selected")).toBe("true");
490
+
491
+ _react2.fireEvent.keyDown(document, {
492
+ key: "Escape",
493
+ code: "Escape",
494
+ keyCode: 27,
495
+ charCode: 27
496
+ });
497
+
498
+ expect(input.value).toBe("02-01-2010");
499
+ });
500
+ test("Selecting a date from the calendar (using keyboard presses) part II", function () {
501
+ var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], null)),
502
+ getByRole = _render15.getByRole,
503
+ getAllByText = _render15.getAllByText;
504
+
505
+ var calendarAction = getByRole("combobox");
506
+ var input = getByRole("textbox");
507
+
508
+ _userEvent["default"].type(input, "01-01-2010");
509
+
510
+ expect(input.value).toBe("01-01-2010");
511
+
512
+ _userEvent["default"].click(calendarAction);
513
+
514
+ expect(document.activeElement === getAllByText("1")[0].closest("button")).toBeTruthy();
515
+
516
+ _react2.fireEvent.keyDown(getAllByText("1")[0].closest("button"), {
517
+ key: "ArrowDown",
518
+ code: "ArrowDown",
519
+ keyCode: 40,
520
+ charCode: 40
521
+ });
522
+
523
+ expect(document.activeElement === getAllByText("8")[0].closest("button")).toBeTruthy();
524
+
525
+ _react2.fireEvent.keyDown(getAllByText("8")[0].closest("button"), {
526
+ key: "ArrowDown",
527
+ code: "ArrowDown",
528
+ keyCode: 40,
529
+ charCode: 40
530
+ });
531
+
532
+ expect(document.activeElement === getAllByText("15")[0].closest("button")).toBeTruthy();
533
+
534
+ _react2.fireEvent.keyDown(getAllByText("15")[0].closest("button"), {
535
+ key: "ArrowUp",
536
+ code: "ArrowUp",
537
+ keyCode: 38,
538
+ charCode: 38
539
+ });
540
+
541
+ expect(document.activeElement === getAllByText("8")[0].closest("button")).toBeTruthy();
542
+
543
+ _react2.fireEvent.keyDown(getAllByText("8")[0].closest("button"), {
544
+ key: "End",
545
+ code: "End",
546
+ keyCode: 35,
547
+ charCode: 35
548
+ });
549
+
550
+ expect(document.activeElement === getAllByText("10")[0].closest("button")).toBeTruthy();
551
+
552
+ _react2.fireEvent.keyDown(getAllByText("10")[0].closest("button"), {
553
+ key: "Home",
554
+ code: "Home",
555
+ keyCode: 36,
556
+ charCode: 36
557
+ });
558
+
559
+ _react2.fireEvent.keyDown(getAllByText("10")[0].closest("button"), {
560
+ key: " ",
561
+ code: "Space",
562
+ keyCode: 32,
563
+ charCode: 32
564
+ });
565
+
566
+ expect(input.value).toBe("10-01-2010");
567
+ });
568
+ test("onChange & onBlur functions are called correctly", function () {
569
+ var onBlur = jest.fn();
570
+ var onChange = jest.fn();
571
+
572
+ var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
573
+ onChange: onChange,
574
+ onBlur: onBlur
575
+ })),
576
+ getByRole = _render16.getByRole;
577
+
578
+ var input = getByRole("textbox");
579
+ var d = new Date(2011, 9, 10);
580
+
581
+ _userEvent["default"].type(input, "10-10-2011");
582
+
583
+ expect(input.value).toBe("10-10-2011");
584
+ expect(onChange).toHaveBeenCalledTimes(10);
585
+ expect(onChange).toHaveBeenCalledWith({
586
+ value: "10-10-2011",
587
+ date: d
588
+ });
589
+
590
+ _react2.fireEvent.blur(input);
591
+
592
+ expect(onBlur).toHaveBeenCalled();
593
+ expect(onBlur).toHaveBeenCalledWith({
594
+ value: "10-10-2011",
595
+ date: d
596
+ });
597
+ });
598
+ test("onChange & onBlur functions are called correctly, also with errors", function () {
599
+ var onBlur = jest.fn();
600
+ var onChange = jest.fn();
601
+
602
+ var _render17 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
603
+ onChange: onChange,
604
+ onBlur: onBlur
605
+ })),
606
+ getByRole = _render17.getByRole;
607
+
608
+ var input = getByRole("textbox");
609
+
610
+ _userEvent["default"].type(input, "10-10-");
611
+
612
+ expect(input.value).toBe("10-10-");
613
+ expect(onChange).toHaveBeenCalledTimes(6);
614
+ expect(onChange).toHaveBeenCalledWith({
615
+ value: "10-10-",
616
+ error: "Invalid date."
617
+ });
618
+
619
+ _react2.fireEvent.blur(input);
620
+
621
+ expect(onBlur).toHaveBeenCalled();
622
+ expect(onBlur).toHaveBeenCalledWith({
623
+ value: "10-10-",
624
+ error: "Invalid date."
625
+ });
626
+ });
627
+ test("onBlur function removes the error when it is fixed", function () {
628
+ var onBlur = jest.fn();
629
+
630
+ var _render18 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
631
+ onBlur: onBlur
632
+ })),
633
+ getByRole = _render18.getByRole;
634
+
635
+ var input = getByRole("textbox");
636
+ var d = new Date(2002, 1, 20);
637
+
638
+ _userEvent["default"].type(input, "test");
639
+
640
+ expect(input.value).toBe("test");
641
+
642
+ _react2.fireEvent.blur(input);
643
+
644
+ expect(onBlur).toHaveBeenCalled();
645
+ expect(onBlur).toHaveBeenCalledWith({
646
+ value: "test",
647
+ error: "Invalid date."
648
+ });
649
+
650
+ _userEvent["default"].clear(input);
651
+
652
+ _userEvent["default"].type(input, "20-02-2002");
653
+
654
+ expect(input.value).toBe("20-02-2002");
655
+
656
+ _react2.fireEvent.blur(input);
657
+
658
+ expect(onBlur).toHaveBeenCalled();
659
+ expect(onBlur).toHaveBeenCalledWith({
660
+ value: "20-02-2002",
661
+ date: d
662
+ });
663
+ });
664
+ test("onBlur function removes the error when the input is empty", function () {
665
+ var onBlur = jest.fn();
666
+
667
+ var _render19 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
668
+ onBlur: onBlur,
669
+ optional: true
670
+ })),
671
+ getByRole = _render19.getByRole;
672
+
673
+ var input = getByRole("textbox");
674
+
675
+ _userEvent["default"].type(input, "test");
676
+
677
+ expect(input.value).toBe("test");
678
+
679
+ _react2.fireEvent.blur(input);
680
+
681
+ expect(onBlur).toHaveBeenCalled();
682
+ expect(onBlur).toHaveBeenCalledWith({
683
+ value: "test",
684
+ error: "Invalid date."
685
+ });
686
+
687
+ _userEvent["default"].clear(input);
688
+
689
+ _react2.fireEvent.blur(input);
690
+
691
+ expect(onBlur).toHaveBeenCalled();
692
+ expect(onBlur).toHaveBeenCalledWith({
693
+ value: ""
694
+ });
695
+ });
696
+ test("onBlur & onChange functions error: required field (not optional)", function () {
697
+ var onBlur = jest.fn();
698
+ var onChange = jest.fn();
699
+
700
+ var _render20 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
701
+ onBlur: onBlur,
702
+ onChange: onChange
703
+ })),
704
+ getByRole = _render20.getByRole;
705
+
706
+ var date = getByRole("textbox");
707
+
708
+ _userEvent["default"].type(date, "t");
709
+
710
+ expect(date.value).toBe("t");
711
+
712
+ _userEvent["default"].clear(date);
713
+
714
+ _react2.fireEvent.blur(date);
715
+
716
+ expect(onBlur).toHaveBeenCalled();
717
+ expect(onBlur).toHaveBeenCalledWith({
718
+ value: "",
719
+ error: "This field is required. Please, enter a value."
720
+ });
721
+ expect(onChange).toHaveBeenCalled();
722
+ expect(onChange).toHaveBeenCalledWith({
723
+ value: "",
724
+ error: "This field is required. Please, enter a value."
725
+ });
726
+ });
727
+ test("Disabled date input (calendar action must be shown but not clickable)", function () {
728
+ var _render21 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
729
+ disabled: true
730
+ })),
731
+ getByRole = _render21.getByRole,
732
+ queryByText = _render21.queryByText;
733
+
734
+ var calendarAction = getByRole("button");
735
+ var d = new Date();
736
+ var options = {
737
+ weekday: "short",
738
+ month: "short",
739
+ day: "numeric"
740
+ };
741
+ expect(getByRole("textbox").disabled).toBeTruthy();
742
+
743
+ _userEvent["default"].click(calendarAction);
744
+
745
+ expect(queryByText(d.toLocaleString("en-US", options))).toBeFalsy();
746
+ });
747
+ test("Input has correct accesibility attributes", function () {
748
+ var _render22 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
749
+ label: "Date input label"
750
+ })),
751
+ getByRole = _render22.getByRole;
752
+
753
+ var input = getByRole("textbox");
754
+ expect(input.getAttribute("aria-autocomplete")).toBeNull();
755
+ expect(input.getAttribute("aria-controls")).toBeNull();
756
+ expect(input.getAttribute("aria-expanded")).toBeNull();
757
+ var calendarAction = getByRole("combobox");
758
+ expect(calendarAction.getAttribute("aria-autocomplete")).toBeNull();
759
+ expect(calendarAction.getAttribute("aria-controls")).toBeTruthy();
760
+ expect(calendarAction.getAttribute("aria-describedby")).toBeTruthy();
761
+ expect(calendarAction.getAttribute("aria-describedby") === calendarAction.getAttribute("aria-controls")).toBeTruthy();
762
+ expect(calendarAction.getAttribute("aria-expanded")).toBe("false");
763
+
764
+ _userEvent["default"].click(calendarAction);
765
+
766
+ var datePicker = getByRole("dialog");
767
+ expect(datePicker.getAttribute("aria-modal")).toBe("true");
768
+ expect(calendarAction.getAttribute("aria-expanded")).toBe("true");
769
+ expect(document.getElementById(calendarAction.getAttribute("aria-describedby"))).toBeTruthy();
770
+
771
+ _react2.fireEvent.keyDown(document, {
772
+ key: "Escape",
773
+ code: "Escape",
774
+ keyCode: 27,
775
+ charCode: 27
776
+ });
777
+
778
+ expect(calendarAction.getAttribute("aria-expanded")).toBe("false");
779
+ });
780
+ test("Chooses the correct year when two digit format", function () {
781
+ var _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
782
+ label: "Default label",
783
+ placeholder: "Placeholder",
784
+ format: "dd-mm-yy",
785
+ defaultValue: "21-10-80"
786
+ })),
787
+ getByText = _render23.getByText,
788
+ getByRole = _render23.getByRole,
789
+ getAllByText = _render23.getAllByText;
790
+
791
+ var input = getByRole("textbox");
792
+ var calendarAction = getByRole("combobox");
793
+ expect(input.value).toBe("21-10-80");
794
+
795
+ _userEvent["default"].click(calendarAction);
796
+
797
+ expect(getByText("21").getAttribute("aria-selected")).toBe("true");
798
+ expect(getByText("October 1980")).toBeTruthy();
799
+
800
+ _react2.fireEvent.keyDown(document, {
801
+ key: "Escape",
802
+ code: "Escape",
803
+ keyCode: 27,
804
+ charCode: 27
805
+ });
806
+
807
+ _react2.fireEvent.change(input, {
808
+ target: {
809
+ value: "21-10-10"
810
+ }
811
+ });
812
+
813
+ _userEvent["default"].click(calendarAction);
814
+
815
+ expect(getByText("October 1910")).toBeTruthy();
816
+
817
+ _userEvent["default"].click(getByText("October 1910"));
818
+
819
+ _userEvent["default"].click(getByText("2010"));
820
+
821
+ _userEvent["default"].click(getAllByText("1")[0]);
822
+
823
+ expect(input.value).toBe("01-10-10");
824
+
825
+ _react2.fireEvent.change(input, {
826
+ target: {
827
+ value: "21-10-80"
828
+ }
829
+ });
830
+
831
+ _userEvent["default"].click(calendarAction);
832
+
833
+ expect(getByText("October 2080")).toBeTruthy();
834
+ });
835
+ });