@dxc-technology/halstack-react 0.0.0-e345e78 → 0.0.0-e3641f4

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 (349) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/V3Select/V3Select.js +455 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/V3Textarea/V3Textarea.js +260 -0
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/accordion/Accordion.js +258 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +170 -0
  13. package/accordion-group/types.d.ts +72 -0
  14. package/accordion-group/types.js +5 -0
  15. package/alert/Alert.d.ts +4 -0
  16. package/alert/Alert.js +290 -0
  17. package/alert/Alert.stories.tsx +170 -0
  18. package/alert/types.d.ts +49 -0
  19. package/alert/types.js +5 -0
  20. package/badge/Badge.js +59 -0
  21. package/box/Box.d.ts +4 -0
  22. package/box/Box.js +129 -0
  23. package/box/Box.stories.tsx +132 -0
  24. package/box/types.d.ts +47 -0
  25. package/box/types.js +5 -0
  26. package/button/Button.d.ts +4 -0
  27. package/button/Button.js +177 -0
  28. package/button/Button.stories.tsx +276 -0
  29. package/button/types.d.ts +57 -0
  30. package/button/types.js +5 -0
  31. package/card/Card.d.ts +4 -0
  32. package/card/Card.js +165 -0
  33. package/card/types.d.ts +69 -0
  34. package/card/types.js +5 -0
  35. package/checkbox/Checkbox.d.ts +4 -0
  36. package/checkbox/Checkbox.js +253 -0
  37. package/checkbox/Checkbox.stories.tsx +192 -0
  38. package/checkbox/types.d.ts +60 -0
  39. package/checkbox/types.js +5 -0
  40. package/chip/Chip.js +221 -0
  41. package/chip/index.d.ts +22 -0
  42. package/{dist/common → common}/OpenSans.css +0 -0
  43. package/{dist/common → common}/RequiredComponent.js +5 -19
  44. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  45. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  46. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  47. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  49. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  50. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  51. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  52. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  53. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  54. package/common/utils.js +22 -0
  55. package/common/variables.js +1577 -0
  56. package/{dist/date → date}/Date.js +93 -77
  57. package/date/index.d.ts +27 -0
  58. package/date-input/DateInput.d.ts +4 -0
  59. package/date-input/DateInput.js +361 -0
  60. package/date-input/DateInput.stories.tsx +138 -0
  61. package/date-input/types.d.ts +100 -0
  62. package/date-input/types.js +5 -0
  63. package/dialog/Dialog.d.ts +4 -0
  64. package/dialog/Dialog.js +165 -0
  65. package/dialog/types.d.ts +43 -0
  66. package/dialog/types.js +5 -0
  67. package/dropdown/Dropdown.d.ts +4 -0
  68. package/dropdown/Dropdown.js +417 -0
  69. package/dropdown/types.d.ts +89 -0
  70. package/dropdown/types.js +5 -0
  71. package/file-input/FileInput.js +532 -0
  72. package/file-input/FileItem.js +193 -0
  73. package/file-input/index.d.ts +81 -0
  74. package/footer/Footer.d.ts +4 -0
  75. package/footer/Footer.js +266 -0
  76. package/footer/Footer.stories.jsx +151 -0
  77. package/footer/Icons.js +77 -0
  78. package/footer/types.d.ts +61 -0
  79. package/footer/types.js +5 -0
  80. package/header/Header.d.ts +7 -0
  81. package/header/Header.js +324 -0
  82. package/header/Icons.js +34 -0
  83. package/header/types.d.ts +45 -0
  84. package/header/types.js +5 -0
  85. package/heading/Heading.js +176 -0
  86. package/heading/index.d.ts +17 -0
  87. package/input-text/Icons.js +22 -0
  88. package/input-text/InputText.js +611 -0
  89. package/input-text/index.d.ts +36 -0
  90. package/layout/ApplicationLayout.js +235 -0
  91. package/layout/Icons.js +55 -0
  92. package/link/Link.d.ts +3 -0
  93. package/link/Link.js +161 -0
  94. package/link/Link.stories.tsx +70 -0
  95. package/link/types.d.ts +74 -0
  96. package/link/types.js +5 -0
  97. package/main.d.ts +44 -0
  98. package/{dist/main.js → main.js} +143 -43
  99. package/number-input/NumberInput.d.ts +4 -0
  100. package/number-input/NumberInput.js +86 -0
  101. package/number-input/NumberInput.stories.tsx +115 -0
  102. package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +3 -2
  103. package/number-input/types.d.ts +117 -0
  104. package/number-input/types.js +5 -0
  105. package/package.json +39 -24
  106. package/paginator/Icons.js +66 -0
  107. package/paginator/Paginator.d.ts +4 -0
  108. package/paginator/Paginator.js +198 -0
  109. package/paginator/Paginator.stories.tsx +63 -0
  110. package/paginator/types.d.ts +38 -0
  111. package/paginator/types.js +5 -0
  112. package/password-input/PasswordInput.d.ts +4 -0
  113. package/password-input/PasswordInput.js +162 -0
  114. package/password-input/PasswordInput.stories.tsx +131 -0
  115. package/password-input/types.d.ts +100 -0
  116. package/password-input/types.js +5 -0
  117. package/progress-bar/ProgressBar.d.ts +4 -0
  118. package/progress-bar/ProgressBar.js +170 -0
  119. package/progress-bar/ProgressBar.stories.jsx +58 -0
  120. package/progress-bar/types.d.ts +37 -0
  121. package/progress-bar/types.js +5 -0
  122. package/radio/Radio.d.ts +4 -0
  123. package/radio/Radio.js +174 -0
  124. package/radio/Radio.stories.tsx +192 -0
  125. package/radio/types.d.ts +54 -0
  126. package/radio/types.js +5 -0
  127. package/resultsetTable/ResultsetTable.js +274 -0
  128. package/resultsetTable/index.d.ts +19 -0
  129. package/select/Select.js +865 -0
  130. package/select/index.d.ts +131 -0
  131. package/sidenav/Sidenav.js +145 -0
  132. package/sidenav/index.d.ts +13 -0
  133. package/slider/Slider.d.ts +4 -0
  134. package/slider/Slider.js +317 -0
  135. package/slider/Slider.stories.tsx +172 -0
  136. package/slider/types.d.ts +78 -0
  137. package/slider/types.js +5 -0
  138. package/spinner/Spinner.d.ts +4 -0
  139. package/spinner/Spinner.js +250 -0
  140. package/spinner/Spinner.stories.jsx +102 -0
  141. package/spinner/types.d.ts +32 -0
  142. package/spinner/types.js +5 -0
  143. package/switch/Switch.d.ts +4 -0
  144. package/switch/Switch.js +179 -0
  145. package/switch/Switch.stories.tsx +160 -0
  146. package/switch/types.d.ts +58 -0
  147. package/switch/types.js +5 -0
  148. package/table/Table.d.ts +4 -0
  149. package/table/Table.js +118 -0
  150. package/table/Table.stories.jsx +276 -0
  151. package/table/types.d.ts +21 -0
  152. package/table/types.js +5 -0
  153. package/tabs/Tabs.d.ts +4 -0
  154. package/tabs/Tabs.js +211 -0
  155. package/tabs/types.d.ts +71 -0
  156. package/tabs/types.js +5 -0
  157. package/tag/Tag.d.ts +4 -0
  158. package/tag/Tag.js +193 -0
  159. package/tag/Tag.stories.tsx +145 -0
  160. package/tag/types.d.ts +60 -0
  161. package/tag/types.js +5 -0
  162. package/text-input/TextInput.js +825 -0
  163. package/text-input/index.d.ts +135 -0
  164. package/textarea/Textarea.js +317 -0
  165. package/textarea/Textarea.stories.jsx +135 -0
  166. package/textarea/index.d.ts +117 -0
  167. package/{dist/toggle → toggle}/Toggle.js +30 -67
  168. package/toggle/index.d.ts +21 -0
  169. package/toggle-group/ToggleGroup.js +243 -0
  170. package/toggle-group/index.d.ts +21 -0
  171. package/{dist/upload → upload}/Upload.js +23 -22
  172. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  173. package/upload/buttons-upload/Icons.js +40 -0
  174. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  175. package/upload/dragAndDropArea/Icons.js +39 -0
  176. package/upload/file-upload/FileToUpload.js +115 -0
  177. package/upload/file-upload/Icons.js +66 -0
  178. package/upload/files-upload/FilesToUpload.js +109 -0
  179. package/upload/index.d.ts +15 -0
  180. package/upload/transaction/Icons.js +160 -0
  181. package/upload/transaction/Transaction.js +104 -0
  182. package/upload/transactions/Transactions.js +94 -0
  183. package/useTheme.js +22 -0
  184. package/wizard/Icons.js +65 -0
  185. package/wizard/Wizard.js +271 -0
  186. package/wizard/index.d.ts +18 -0
  187. package/README.md +0 -66
  188. package/babel.config.js +0 -4
  189. package/dist/accordion/Accordion.js +0 -264
  190. package/dist/accordion/Accordion.stories.js +0 -207
  191. package/dist/accordion/readme.md +0 -96
  192. package/dist/alert/Alert.js +0 -302
  193. package/dist/alert/Alert.stories.js +0 -158
  194. package/dist/alert/close.svg +0 -4
  195. package/dist/alert/error.svg +0 -4
  196. package/dist/alert/info.svg +0 -4
  197. package/dist/alert/readme.md +0 -43
  198. package/dist/alert/success.svg +0 -4
  199. package/dist/alert/warning.svg +0 -4
  200. package/dist/box/Box.js +0 -148
  201. package/dist/button/Button.js +0 -183
  202. package/dist/button/Button.stories.js +0 -224
  203. package/dist/button/readme.md +0 -93
  204. package/dist/card/Card.js +0 -217
  205. package/dist/checkbox/Checkbox.js +0 -224
  206. package/dist/checkbox/Checkbox.stories.js +0 -144
  207. package/dist/checkbox/readme.md +0 -116
  208. package/dist/chip/Chip.js +0 -170
  209. package/dist/common/services/example-service.js +0 -10
  210. package/dist/common/services/example-service.test.js +0 -12
  211. package/dist/common/utils.js +0 -42
  212. package/dist/common/variables.js +0 -260
  213. package/dist/date/Date.stories.js +0 -205
  214. package/dist/date/calendar.svg +0 -1
  215. package/dist/date/calendar_dark.svg +0 -1
  216. package/dist/date/readme.md +0 -73
  217. package/dist/dialog/Dialog.js +0 -193
  218. package/dist/dialog/Dialog.stories.js +0 -217
  219. package/dist/dialog/readme.md +0 -32
  220. package/dist/dropdown/Dropdown.js +0 -412
  221. package/dist/dropdown/Dropdown.stories.js +0 -249
  222. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  223. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  224. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  225. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  226. package/dist/dropdown/readme.md +0 -69
  227. package/dist/footer/Footer.js +0 -346
  228. package/dist/footer/Footer.stories.js +0 -94
  229. package/dist/footer/dxc_logo_wht.png +0 -0
  230. package/dist/footer/readme.md +0 -41
  231. package/dist/header/Header.js +0 -350
  232. package/dist/header/Header.stories.js +0 -176
  233. package/dist/header/close_icon.svg +0 -1
  234. package/dist/header/dxc_logo_black.png +0 -0
  235. package/dist/header/dxc_logo_white.png +0 -0
  236. package/dist/header/hamb_menu_black.svg +0 -1
  237. package/dist/header/hamb_menu_white.svg +0 -1
  238. package/dist/header/readme.md +0 -33
  239. package/dist/heading/Heading.js +0 -159
  240. package/dist/input-text/InputText.js +0 -519
  241. package/dist/input-text/InputText.stories.js +0 -209
  242. package/dist/input-text/error.svg +0 -1
  243. package/dist/input-text/readme.md +0 -91
  244. package/dist/link/Link.js +0 -136
  245. package/dist/link/readme.md +0 -51
  246. package/dist/paginator/Paginator.js +0 -178
  247. package/dist/paginator/images/next.svg +0 -3
  248. package/dist/paginator/images/nextPage.svg +0 -3
  249. package/dist/paginator/images/previous.svg +0 -3
  250. package/dist/paginator/images/previousPage.svg +0 -3
  251. package/dist/paginator/readme.md +0 -50
  252. package/dist/progress-bar/ProgressBar.js +0 -189
  253. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  254. package/dist/progress-bar/readme.md +0 -63
  255. package/dist/radio/Radio.js +0 -191
  256. package/dist/radio/Radio.stories.js +0 -166
  257. package/dist/radio/readme.md +0 -70
  258. package/dist/resultsetTable/ResultsetTable.js +0 -334
  259. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  260. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  261. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  262. package/dist/select/Select.js +0 -442
  263. package/dist/select/Select.stories.js +0 -235
  264. package/dist/select/readme.md +0 -72
  265. package/dist/sidenav/Sidenav.js +0 -217
  266. package/dist/sidenav/arrow_icon.svg +0 -3
  267. package/dist/slider/Slider.js +0 -258
  268. package/dist/slider/Slider.stories.js +0 -241
  269. package/dist/slider/readme.md +0 -64
  270. package/dist/spinner/Spinner.js +0 -196
  271. package/dist/spinner/Spinner.stories.js +0 -183
  272. package/dist/spinner/readme.md +0 -65
  273. package/dist/switch/Switch.js +0 -195
  274. package/dist/switch/Switch.stories.js +0 -134
  275. package/dist/switch/readme.md +0 -133
  276. package/dist/table/Table.js +0 -84
  277. package/dist/tabs/Tabs.js +0 -170
  278. package/dist/tabs/Tabs.stories.js +0 -130
  279. package/dist/tabs/readme.md +0 -78
  280. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  281. package/dist/tabs-for-sections/readme.md +0 -78
  282. package/dist/tag/Tag.js +0 -217
  283. package/dist/textarea/Textarea.js +0 -226
  284. package/dist/toggle/Toggle.stories.js +0 -297
  285. package/dist/toggle/readme.md +0 -80
  286. package/dist/upload/Upload.stories.js +0 -72
  287. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -125
  288. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  289. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  290. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -282
  291. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  292. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  293. package/dist/upload/file-upload/FileToUpload.js +0 -158
  294. package/dist/upload/file-upload/audio-icon.svg +0 -4
  295. package/dist/upload/file-upload/close.svg +0 -4
  296. package/dist/upload/file-upload/file-icon.svg +0 -4
  297. package/dist/upload/file-upload/video-icon.svg +0 -4
  298. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  299. package/dist/upload/readme.md +0 -37
  300. package/dist/upload/transaction/Transaction.js +0 -155
  301. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  302. package/dist/upload/transaction/audio-icon.svg +0 -4
  303. package/dist/upload/transaction/error-icon.svg +0 -4
  304. package/dist/upload/transaction/file-icon-err.svg +0 -4
  305. package/dist/upload/transaction/file-icon.svg +0 -4
  306. package/dist/upload/transaction/image-icon-err.svg +0 -4
  307. package/dist/upload/transaction/image-icon.svg +0 -4
  308. package/dist/upload/transaction/success-icon.svg +0 -4
  309. package/dist/upload/transaction/video-icon-err.svg +0 -4
  310. package/dist/upload/transaction/video-icon.svg +0 -4
  311. package/dist/upload/transactions/Transactions.js +0 -120
  312. package/dist/wizard/Wizard.js +0 -310
  313. package/dist/wizard/invalid_icon.svg +0 -6
  314. package/dist/wizard/valid_icon.svg +0 -6
  315. package/dist/wizard/validation-wrong.svg +0 -6
  316. package/test/Accordion.test.js +0 -33
  317. package/test/Alert.test.js +0 -53
  318. package/test/Box.test.js +0 -10
  319. package/test/Button.test.js +0 -18
  320. package/test/Card.test.js +0 -30
  321. package/test/Checkbox.test.js +0 -45
  322. package/test/Chip.test.js +0 -25
  323. package/test/Date.test.js +0 -393
  324. package/test/Dialog.test.js +0 -23
  325. package/test/Dropdown.test.js +0 -130
  326. package/test/Footer.test.js +0 -99
  327. package/test/Header.test.js +0 -39
  328. package/test/Heading.test.js +0 -35
  329. package/test/InputText.test.js +0 -236
  330. package/test/Link.test.js +0 -25
  331. package/test/Paginator.test.js +0 -165
  332. package/test/ProgressBar.test.js +0 -35
  333. package/test/Radio.test.js +0 -37
  334. package/test/ResultsetTable.test.js +0 -282
  335. package/test/Select.test.js +0 -191
  336. package/test/Sidenav.test.js +0 -87
  337. package/test/Slider.test.js +0 -65
  338. package/test/Spinner.test.js +0 -27
  339. package/test/Switch.test.js +0 -45
  340. package/test/Table.test.js +0 -36
  341. package/test/Tabs.test.js +0 -88
  342. package/test/TabsForSections.test.js +0 -34
  343. package/test/Tag.test.js +0 -32
  344. package/test/TextArea.test.js +0 -52
  345. package/test/Toggle.test.js +0 -43
  346. package/test/Upload.test.js +0 -60
  347. package/test/Wizard.test.js +0 -130
  348. package/test/mocks/pngMock.js +0 -1
  349. package/test/mocks/svgMock.js +0 -1
@@ -1,43 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcToggle from "../src/toggle/Toggle";
4
-
5
- describe("Toggle component tests", () => {
6
- test("Toggle renders with correct text", () => {
7
- const { getByText } = render(<DxcToggle label="Toggle" />);
8
- expect(getByText("Toggle")).toBeTruthy();
9
- });
10
-
11
- test("Calls correct function on click", () => {
12
- const onClick = jest.fn();
13
- const { getByText} = render(<DxcToggle label="ToggleTest" onClick={onClick} />);
14
- fireEvent.click(getByText("ToggleTest"));
15
- expect(onClick).toHaveBeenCalled();
16
- });
17
-
18
- test("Calls correct function on click with the correct value.", () => {
19
- const onClick = jest.fn();
20
- const { getByText, rerender } = render(<DxcToggle label="ToggleTest" onClick={onClick} />);
21
-
22
- fireEvent.click(getByText("ToggleTest"));
23
- rerender(<DxcToggle label="ToggleTest" onClick={onClick} selected={true} />);
24
- fireEvent.click(getByText("ToggleTest"));
25
- expect(onClick.mock.calls[0][0]).toBe(true);
26
- expect(onClick.mock.calls[1][0]).toBe(false);
27
- });
28
-
29
-
30
- test("Calls correct function on click with the correct value, if it´s controlled and the user doesn´t change the value the function always receives the same", () => {
31
- const onClick = jest.fn();
32
- const { getByText } = render(<DxcToggle label="ToggleTest" selected={true} onClick={onClick} />);
33
-
34
- fireEvent.click(getByText("ToggleTest"));
35
- fireEvent.click(getByText("ToggleTest"));
36
- fireEvent.click(getByText("ToggleTest"));
37
- expect(onClick).toHaveBeenCalledTimes(3);
38
- expect(onClick.mock.calls[0][0]).toBe(false);
39
- expect(onClick.mock.calls[1][0]).toBe(false);
40
- expect(onClick.mock.calls[2][0]).toBe(false);
41
- });
42
-
43
- });
@@ -1,60 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent, act, createEvent } from "@testing-library/react";
3
- import DxcUpload from "../src/upload/Upload";
4
-
5
- describe("Upload component tests", () => {
6
- test("Upload renders with correct text", () => {
7
- const { getByText } = render(<DxcUpload margin="small"></DxcUpload>);
8
- expect(getByText("There are no files to upload")).toBeTruthy();
9
- expect(getByText("Drag and drop your files here or choose one from your computer")).toBeTruthy();
10
- expect(getByText("CHOOSE FILES")).toBeTruthy();
11
- });
12
-
13
- test("Upload shows file information", () => {
14
- const myfunction = jest.fn();
15
- const { getByText } = render(<DxcUpload margin="small"></DxcUpload>);
16
-
17
- const dropZone = getByText("There are no files to upload");
18
- const dropEvent = createEvent.drop(dropZone);
19
- const fileList = [new File(["(⌐□_□)"], "test.png", { type: "image/png" })];
20
-
21
- Object.defineProperty(dropEvent, "dataTransfer", {
22
- value: {
23
- files: fileList,
24
- clearData: myfunction,
25
- },
26
- });
27
-
28
- act(() => {
29
- fireEvent(dropZone, dropEvent);
30
- });
31
- expect(getByText("test.png")).toBeTruthy();
32
- expect(getByText("image/png")).toBeTruthy();
33
- expect(getByText("UPLOAD")).toBeTruthy();
34
- });
35
-
36
- test("Calls correct function callbackUpload", () => {
37
- const onCallbackUpload = jest.fn(() => new Promise(resolve => setTimeout(resolve, 1000)));
38
- const myfunction = jest.fn();
39
- const { getByText } = render(<DxcUpload margin="small" callbackUpload={onCallbackUpload}></DxcUpload>);
40
-
41
- const dropZone = getByText("There are no files to upload");
42
- const dropEvent = createEvent.drop(dropZone);
43
- const fileList = [new File(["(⌐□_□)"], "test.png", { type: "image/png" })];
44
-
45
- Object.defineProperty(dropEvent, "dataTransfer", {
46
- value: {
47
- files: fileList,
48
- clearData: myfunction,
49
- },
50
- });
51
-
52
- act(() => {
53
- fireEvent(dropZone, dropEvent);
54
- });
55
- act(() => {
56
- fireEvent.click(getByText("UPLOAD"));
57
- });
58
- expect(onCallbackUpload).toHaveBeenCalled();
59
- });
60
- });
@@ -1,130 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcWizard from "../src/wizard/Wizard";
4
-
5
- describe("Wizard components tests", () => {
6
- test("Wizard renders with correct steps", () => {
7
- const { getByText } = render(
8
- <DxcWizard
9
- steps={[
10
- {
11
- label: "first-step",
12
- },
13
- {
14
- label: "second-step",
15
- },
16
- ]}
17
- ></DxcWizard>
18
- );
19
-
20
- expect(getByText("first-step")).toBeTruthy();
21
- expect(getByText("second-step")).toBeTruthy();
22
- });
23
-
24
- test("Click on step text", () => {
25
- const onClick = jest.fn();
26
- const { getByText } = render(
27
- <DxcWizard
28
- onStepClick={onClick}
29
- steps={[
30
- {
31
- label: "first-step",
32
- },
33
- ]}
34
- ></DxcWizard>
35
- );
36
-
37
- const step = getByText("first-step");
38
- fireEvent.click(step);
39
- expect(onClick).toHaveBeenCalled();
40
- });
41
-
42
- test("Click on step description", () => {
43
- const onClick = jest.fn();
44
- const { getByText } = render(
45
- <DxcWizard
46
- onStepClick={onClick}
47
- steps={[
48
- {
49
- label: "first-step",
50
- description: "step-description",
51
- },
52
- ]}
53
- ></DxcWizard>
54
- );
55
-
56
- const step = getByText("step-description");
57
- fireEvent.click(step);
58
- expect(onClick).toHaveBeenCalled();
59
- });
60
-
61
- test("Click on step number", () => {
62
- const onClick = jest.fn();
63
- const { getByText } = render(
64
- <DxcWizard
65
- onStepClick={onClick}
66
- steps={[
67
- {
68
- label: "first-step",
69
- },
70
- ]}
71
- ></DxcWizard>
72
- );
73
-
74
- const step = getByText("1");
75
- fireEvent.click(step);
76
- expect(onClick).toHaveBeenCalled();
77
- });
78
-
79
- test("Click on disable step", () => {
80
- const onClick = jest.fn();
81
- const { getByText } = render(
82
- <DxcWizard
83
- onStepClick={onClick}
84
- steps={[
85
- {
86
- label: "first-step",
87
- },
88
- {
89
- label: "second-step",
90
- disabled: true,
91
- },
92
- ]}
93
- ></DxcWizard>
94
- );
95
-
96
- const step = getByText("second-step");
97
- fireEvent.click(step);
98
- expect(onClick).toHaveBeenCalledTimes(0);
99
- });
100
-
101
- test("Controlled wizard function is called", () => {
102
- const onClick = jest.fn((i) => i);
103
- const { getByText } = render(
104
- <DxcWizard
105
- currentStep={1}
106
- onStepClick={onClick}
107
- steps={[
108
- {
109
- label: "first-step",
110
- },
111
- {
112
- label: "second-step",
113
- },
114
- ]}
115
- ></DxcWizard>
116
- );
117
-
118
- const step1 = getByText("first-step");
119
- const step2 = getByText("second-step");
120
- fireEvent.click(step1);
121
- fireEvent.click(step2);
122
- fireEvent.click(step1);
123
-
124
- expect(onClick).toHaveBeenCalledTimes(3);
125
- //Test the received value in the onClick function
126
- expect(onClick).toHaveBeenNthCalledWith(1, 0);
127
- expect(onClick).toHaveBeenNthCalledWith(2, 1);
128
- expect(onClick).toHaveBeenNthCalledWith(3, 0);
129
- });
130
- });
@@ -1 +0,0 @@
1
- module.exports = 'ImageMock';
@@ -1 +0,0 @@
1
- module.exports = 'IconMock';