@dxc-technology/halstack-react 0.0.0-13c8be2 → 0.0.0-144434f

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 (359) 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/{dist/card → card}/Card.js +42 -124
  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/{dist/chip → chip}/Chip.js +74 -76
  41. package/chip/index.d.ts +22 -0
  42. package/{dist/common → common}/OpenSans.css +0 -0
  43. package/{dist/common → common}/RequiredComponent.js +3 -11
  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/{dist/common → common}/utils.js +0 -0
  55. package/common/variables.js +1577 -0
  56. package/{dist/date → date}/Date.js +71 -55
  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/{dist/heading → heading}/Heading.js +30 -76
  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/{dist/layout → layout}/ApplicationLayout.js +35 -131
  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} +121 -69
  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/number-input/NumberInputContext.js +16 -0
  103. package/number-input/types.d.ts +117 -0
  104. package/number-input/types.js +5 -0
  105. package/package.json +34 -25
  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/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +77 -135
  128. package/resultsetTable/index.d.ts +19 -0
  129. package/select/Select.js +865 -0
  130. package/select/Select.stories.tsx +572 -0
  131. package/select/index.d.ts +131 -0
  132. package/sidenav/Sidenav.d.ts +9 -0
  133. package/sidenav/Sidenav.js +136 -0
  134. package/sidenav/types.d.ts +50 -0
  135. package/sidenav/types.js +5 -0
  136. package/slider/Slider.d.ts +4 -0
  137. package/slider/Slider.js +317 -0
  138. package/slider/Slider.stories.tsx +177 -0
  139. package/slider/types.d.ts +78 -0
  140. package/slider/types.js +5 -0
  141. package/spinner/Spinner.d.ts +4 -0
  142. package/spinner/Spinner.js +250 -0
  143. package/spinner/Spinner.stories.jsx +102 -0
  144. package/spinner/types.d.ts +32 -0
  145. package/spinner/types.js +5 -0
  146. package/switch/Switch.d.ts +4 -0
  147. package/{dist/switch → switch}/Switch.js +28 -77
  148. package/switch/Switch.stories.tsx +160 -0
  149. package/switch/types.d.ts +58 -0
  150. package/switch/types.js +5 -0
  151. package/table/Table.d.ts +4 -0
  152. package/table/Table.js +118 -0
  153. package/table/Table.stories.jsx +276 -0
  154. package/table/types.d.ts +21 -0
  155. package/table/types.js +5 -0
  156. package/tabs/Tabs.d.ts +4 -0
  157. package/tabs/Tabs.js +211 -0
  158. package/tabs/types.d.ts +71 -0
  159. package/tabs/types.js +5 -0
  160. package/tag/Tag.d.ts +4 -0
  161. package/tag/Tag.js +193 -0
  162. package/tag/Tag.stories.tsx +145 -0
  163. package/tag/types.d.ts +60 -0
  164. package/tag/types.js +5 -0
  165. package/text-input/TextInput.js +825 -0
  166. package/text-input/index.d.ts +135 -0
  167. package/textarea/Textarea.js +317 -0
  168. package/textarea/Textarea.stories.jsx +135 -0
  169. package/textarea/index.d.ts +117 -0
  170. package/{dist/toggle → toggle}/Toggle.js +15 -49
  171. package/toggle/index.d.ts +21 -0
  172. package/toggle-group/ToggleGroup.js +243 -0
  173. package/toggle-group/ToggleGroup.stories.tsx +178 -0
  174. package/toggle-group/index.d.ts +21 -0
  175. package/{dist/upload → upload}/Upload.js +11 -19
  176. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  177. package/upload/buttons-upload/Icons.js +40 -0
  178. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  179. package/upload/dragAndDropArea/Icons.js +39 -0
  180. package/upload/file-upload/FileToUpload.js +115 -0
  181. package/upload/file-upload/Icons.js +66 -0
  182. package/{dist/upload → upload}/files-upload/FilesToUpload.js +14 -28
  183. package/upload/index.d.ts +15 -0
  184. package/upload/transaction/Icons.js +160 -0
  185. package/upload/transaction/Transaction.js +104 -0
  186. package/upload/transactions/Transactions.js +94 -0
  187. package/{dist/useTheme.js → useTheme.js} +0 -0
  188. package/wizard/Icons.js +65 -0
  189. package/wizard/Wizard.d.ts +4 -0
  190. package/wizard/Wizard.js +231 -0
  191. package/wizard/Wizard.stories.jsx +224 -0
  192. package/wizard/types.d.ts +64 -0
  193. package/wizard/types.js +5 -0
  194. package/README.md +0 -66
  195. package/babel.config.js +0 -8
  196. package/dist/BackgroundColorContext.js +0 -46
  197. package/dist/ThemeContext.js +0 -216
  198. package/dist/accordion/Accordion.js +0 -356
  199. package/dist/accordion/Accordion.stories.js +0 -207
  200. package/dist/accordion/readme.md +0 -96
  201. package/dist/accordion-group/AccordionGroup.js +0 -188
  202. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  203. package/dist/accordion-group/readme.md +0 -70
  204. package/dist/alert/Alert.js +0 -318
  205. package/dist/alert/Alert.stories.js +0 -158
  206. package/dist/alert/close.svg +0 -4
  207. package/dist/alert/error.svg +0 -4
  208. package/dist/alert/info.svg +0 -4
  209. package/dist/alert/readme.md +0 -43
  210. package/dist/alert/success.svg +0 -4
  211. package/dist/alert/warning.svg +0 -4
  212. package/dist/badge/Badge.js +0 -40
  213. package/dist/box/Box.js +0 -147
  214. package/dist/button/Button.js +0 -219
  215. package/dist/button/Button.stories.js +0 -224
  216. package/dist/button/readme.md +0 -93
  217. package/dist/checkbox/Checkbox.js +0 -233
  218. package/dist/checkbox/Checkbox.stories.js +0 -144
  219. package/dist/checkbox/readme.md +0 -116
  220. package/dist/common/variables.js +0 -699
  221. package/dist/date/Date.stories.js +0 -205
  222. package/dist/date/calendar.svg +0 -1
  223. package/dist/date/calendar_dark.svg +0 -1
  224. package/dist/date/readme.md +0 -73
  225. package/dist/dialog/Dialog.js +0 -203
  226. package/dist/dialog/Dialog.stories.js +0 -217
  227. package/dist/dialog/readme.md +0 -32
  228. package/dist/dropdown/Dropdown.js +0 -456
  229. package/dist/dropdown/Dropdown.stories.js +0 -249
  230. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  231. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  232. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  233. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  234. package/dist/dropdown/readme.md +0 -69
  235. package/dist/footer/Footer.js +0 -405
  236. package/dist/footer/Footer.stories.js +0 -94
  237. package/dist/footer/dxc_logo_wht.png +0 -0
  238. package/dist/footer/readme.md +0 -41
  239. package/dist/header/Header.js +0 -431
  240. package/dist/header/Header.stories.js +0 -176
  241. package/dist/header/close_icon.svg +0 -1
  242. package/dist/header/dxc_logo_black.png +0 -0
  243. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  244. package/dist/header/dxc_logo_white.png +0 -0
  245. package/dist/header/hamb_menu_black.svg +0 -1
  246. package/dist/header/hamb_menu_white.svg +0 -1
  247. package/dist/header/readme.md +0 -33
  248. package/dist/input-text/InputText.js +0 -609
  249. package/dist/input-text/InputText.stories.js +0 -209
  250. package/dist/input-text/error.svg +0 -1
  251. package/dist/input-text/readme.md +0 -91
  252. package/dist/layout/facebook.svg +0 -45
  253. package/dist/layout/linkedin.svg +0 -50
  254. package/dist/layout/twitter.svg +0 -53
  255. package/dist/link/Link.js +0 -200
  256. package/dist/link/readme.md +0 -51
  257. package/dist/paginator/Paginator.js +0 -261
  258. package/dist/paginator/images/next.svg +0 -3
  259. package/dist/paginator/images/nextPage.svg +0 -3
  260. package/dist/paginator/images/previous.svg +0 -3
  261. package/dist/paginator/images/previousPage.svg +0 -3
  262. package/dist/paginator/readme.md +0 -50
  263. package/dist/progress-bar/ProgressBar.js +0 -192
  264. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  265. package/dist/progress-bar/readme.md +0 -63
  266. package/dist/radio/Radio.js +0 -190
  267. package/dist/radio/Radio.stories.js +0 -166
  268. package/dist/radio/readme.md +0 -70
  269. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  270. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  271. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  272. package/dist/select/Select.js +0 -490
  273. package/dist/select/Select.stories.js +0 -235
  274. package/dist/select/readme.md +0 -72
  275. package/dist/sidenav/Sidenav.js +0 -179
  276. package/dist/slider/Slider.js +0 -267
  277. package/dist/slider/Slider.stories.js +0 -241
  278. package/dist/slider/readme.md +0 -64
  279. package/dist/spinner/Spinner.js +0 -214
  280. package/dist/spinner/Spinner.stories.js +0 -183
  281. package/dist/spinner/readme.md +0 -65
  282. package/dist/switch/Switch.stories.js +0 -134
  283. package/dist/switch/readme.md +0 -133
  284. package/dist/table/Table.js +0 -98
  285. package/dist/tabs/Tabs.js +0 -325
  286. package/dist/tabs/Tabs.stories.js +0 -130
  287. package/dist/tabs/readme.md +0 -78
  288. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  289. package/dist/tabs-for-sections/readme.md +0 -78
  290. package/dist/tag/Tag.js +0 -268
  291. package/dist/textarea/Textarea.js +0 -238
  292. package/dist/toggle/Toggle.stories.js +0 -297
  293. package/dist/toggle/readme.md +0 -80
  294. package/dist/toggle-group/ToggleGroup.js +0 -223
  295. package/dist/toggle-group/readme.md +0 -82
  296. package/dist/upload/Upload.stories.js +0 -72
  297. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -123
  298. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  299. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  300. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -293
  301. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  302. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  303. package/dist/upload/file-upload/FileToUpload.js +0 -162
  304. package/dist/upload/file-upload/audio-icon.svg +0 -4
  305. package/dist/upload/file-upload/close.svg +0 -4
  306. package/dist/upload/file-upload/file-icon.svg +0 -4
  307. package/dist/upload/file-upload/video-icon.svg +0 -4
  308. package/dist/upload/readme.md +0 -37
  309. package/dist/upload/transaction/Transaction.js +0 -152
  310. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  311. package/dist/upload/transaction/audio-icon.svg +0 -4
  312. package/dist/upload/transaction/error-icon.svg +0 -4
  313. package/dist/upload/transaction/file-icon-err.svg +0 -4
  314. package/dist/upload/transaction/file-icon.svg +0 -4
  315. package/dist/upload/transaction/image-icon-err.svg +0 -4
  316. package/dist/upload/transaction/image-icon.svg +0 -4
  317. package/dist/upload/transaction/success-icon.svg +0 -4
  318. package/dist/upload/transaction/video-icon-err.svg +0 -4
  319. package/dist/upload/transaction/video-icon.svg +0 -4
  320. package/dist/upload/transactions/Transactions.js +0 -122
  321. package/dist/wizard/Wizard.js +0 -355
  322. package/dist/wizard/invalid_icon.svg +0 -6
  323. package/dist/wizard/valid_icon.svg +0 -6
  324. package/dist/wizard/validation-wrong.svg +0 -6
  325. package/test/Accordion.test.js +0 -33
  326. package/test/AccordionGroup.test.js +0 -125
  327. package/test/Alert.test.js +0 -53
  328. package/test/Box.test.js +0 -10
  329. package/test/Button.test.js +0 -18
  330. package/test/Card.test.js +0 -30
  331. package/test/Checkbox.test.js +0 -45
  332. package/test/Chip.test.js +0 -25
  333. package/test/Date.test.js +0 -393
  334. package/test/Dialog.test.js +0 -23
  335. package/test/Dropdown.test.js +0 -130
  336. package/test/Footer.test.js +0 -99
  337. package/test/Header.test.js +0 -39
  338. package/test/Heading.test.js +0 -35
  339. package/test/InputText.test.js +0 -240
  340. package/test/Link.test.js +0 -42
  341. package/test/Paginator.test.js +0 -177
  342. package/test/ProgressBar.test.js +0 -35
  343. package/test/Radio.test.js +0 -37
  344. package/test/ResultsetTable.test.js +0 -330
  345. package/test/Select.test.js +0 -192
  346. package/test/Sidenav.test.js +0 -45
  347. package/test/Slider.test.js +0 -82
  348. package/test/Spinner.test.js +0 -27
  349. package/test/Switch.test.js +0 -45
  350. package/test/Table.test.js +0 -36
  351. package/test/Tabs.test.js +0 -109
  352. package/test/TabsForSections.test.js +0 -34
  353. package/test/Tag.test.js +0 -32
  354. package/test/TextArea.test.js +0 -52
  355. package/test/ToggleGroup.test.js +0 -81
  356. package/test/Upload.test.js +0 -60
  357. package/test/Wizard.test.js +0 -130
  358. package/test/mocks/pngMock.js +0 -1
  359. package/test/mocks/svgMock.js +0 -1
@@ -1,125 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcAccordionGroup from "../src/accordion-group/AccordionGroup";
4
-
5
- describe("Accordion component tests", () => {
6
- test("Uncontrolled accordion group renders with children", () => {
7
- const { getByText, getAllByRole } = render(
8
- <DxcAccordionGroup>
9
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium">
10
- <div>
11
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
12
- leo lobortis eget.
13
- </div>
14
- </DxcAccordionGroup.Accordion>
15
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
16
- <div>
17
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
18
- leo lobortis eget.
19
- </div>
20
- </DxcAccordionGroup.Accordion>
21
- </DxcAccordionGroup>
22
- );
23
-
24
- expect(getByText("Accordion1")).toBeTruthy();
25
- expect(getByText("Accordion2")).toBeTruthy();
26
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
27
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
28
- });
29
-
30
- test("Uncontrolled accordion group renders with only one children", () => {
31
- const { getByText, getAllByRole } = render(
32
- <DxcAccordionGroup>
33
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium">
34
- <div>
35
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
36
- leo lobortis eget.
37
- </div>
38
- </DxcAccordionGroup.Accordion>
39
- </DxcAccordionGroup>
40
- );
41
-
42
- expect(getByText("Accordion1")).toBeTruthy();
43
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
44
- });
45
-
46
- test("Uncontrolled accordion group calls correct function on click", () => {
47
- const onActiveChange = jest.fn();
48
- const { getByText, getAllByRole } = render(
49
- <DxcAccordionGroup margin="large" onActiveChange={onActiveChange}>
50
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
51
- <div>
52
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
53
- leo lobortis eget.
54
- </div>
55
- </DxcAccordionGroup.Accordion>
56
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
57
- <div>
58
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
59
- leo lobortis eget.
60
- </div>
61
- </DxcAccordionGroup.Accordion>
62
- </DxcAccordionGroup>
63
- );
64
-
65
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
66
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
67
- fireEvent.click(getByText("Accordion1"));
68
- expect(onActiveChange).toHaveBeenCalled();
69
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("true");
70
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
71
- });
72
-
73
- test("Controlled accordion with indexActive change", () => {
74
- const onActiveChange = jest.fn();
75
- const { getByText, getAllByRole, rerender } = render(
76
- <DxcAccordionGroup margin="large" indexActive={1} onActiveChange={onActiveChange}>
77
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
78
- <div>Text1</div>
79
- </DxcAccordionGroup.Accordion>
80
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
81
- <div>Text2</div>
82
- </DxcAccordionGroup.Accordion>
83
- </DxcAccordionGroup>
84
- );
85
- expect(getByText("Text1")).toBeTruthy();
86
- expect(getByText("Text2")).toBeTruthy();
87
- fireEvent.click(getByText("Accordion1"));
88
- fireEvent.click(getByText("Accordion2"));
89
- expect(onActiveChange.mock.calls[0][0]).toBe(0);
90
- expect(onActiveChange.mock.calls[1][0]).toBe(1);
91
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
92
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("true");
93
-
94
- rerender(
95
- <DxcAccordionGroup margin="large" indexActive={0} onActiveChange={onActiveChange}>
96
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
97
- <div>Text1</div>
98
- </DxcAccordionGroup.Accordion>
99
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
100
- <div>Text2</div>
101
- </DxcAccordionGroup.Accordion>
102
- </DxcAccordionGroup>
103
- );
104
-
105
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("true");
106
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
107
- });
108
-
109
- test("Disabled uncontrolled accordion group", () => {
110
- const onActiveChange = jest.fn();
111
- const { getByText } = render(
112
- <DxcAccordionGroup margin="large" onActiveChange={onActiveChange} disabled={true}>
113
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
114
- <div>Text1</div>
115
- </DxcAccordionGroup.Accordion>
116
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
117
- <div>Text2</div>
118
- </DxcAccordionGroup.Accordion>
119
- </DxcAccordionGroup>
120
- );
121
- fireEvent.click(getByText("Accordion1"));
122
- fireEvent.click(getByText("Accordion2"));
123
- expect(onActiveChange).toHaveBeenCalledTimes(0);
124
- });
125
- });
@@ -1,53 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcAlert from "../src/alert/Alert";
4
-
5
- describe("Alert component tests", () => {
6
- test("Info alert renders with correct text", () => {
7
- const { getByText } = render(<DxcAlert type="info" inlineText="info-alert-text" />);
8
- expect(getByText("information")).toBeTruthy();
9
- expect(getByText("info-alert-text")).toBeTruthy();
10
- });
11
-
12
- test("Confirm alert renders with correct text", () => {
13
- const { getByText } = render(<DxcAlert type="confirm" inlineText="confirm-alert-text" />);
14
- expect(getByText("success")).toBeTruthy();
15
- expect(getByText("confirm-alert-text")).toBeTruthy();
16
- });
17
-
18
- test("Warning alert renders with correct text", () => {
19
- const { getByText } = render(<DxcAlert type="warning" inlineText="warning-alert-text" />);
20
- expect(getByText("warning")).toBeTruthy();
21
- expect(getByText("warning-alert-text")).toBeTruthy();
22
- });
23
-
24
- test("Error alert renders with correct text", () => {
25
- const { getByText } = render(<DxcAlert type="error" inlineText="error-alert-text" />);
26
- expect(getByText("error")).toBeTruthy();
27
- expect(getByText("error-alert-text")).toBeTruthy();
28
- });
29
-
30
- test("Alert renders with correct children", () => {
31
- const { getByText } = render(<DxcAlert inlineText="alert-text"><p>sample-children</p></DxcAlert>);
32
- expect(getByText("alert-text")).toBeTruthy();
33
- expect(getByText("sample-children")).toBeTruthy();
34
- });
35
-
36
- test("Calls correct function on close", () => {
37
- const onClose = jest.fn();
38
- const { getByRole } = render(<DxcAlert onClose={onClose} inlineText="info-alert-text" />);
39
-
40
- const closeButton = getByRole("button");
41
- fireEvent.click(closeButton);
42
- expect(onClose).toHaveBeenCalled();
43
- });
44
-
45
- test("Modal alert calls correct function on close", () => {
46
- const onClose = jest.fn();
47
- const { getByRole } = render(<DxcAlert onClose={onClose} mode="modal" inlineText="info-alert-text" />);
48
-
49
- const closeButton = getByRole("button");
50
- fireEvent.click(closeButton);
51
- expect(onClose).toHaveBeenCalled();
52
- });
53
- });
package/test/Box.test.js DELETED
@@ -1,10 +0,0 @@
1
- import React from "react";
2
- import { render } from "@testing-library/react";
3
- import DxcBox from "../src/card/Card";
4
-
5
- describe("Box component tests", () => {
6
- test("Box renders with correct text", () => {
7
- const { getByText } = render(<DxcBox>test-box</DxcBox>);
8
- expect(getByText("test-box")).toBeTruthy();
9
- });
10
- });
@@ -1,18 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcButton from "../src/button/Button";
4
-
5
- describe("Button component tests", () => {
6
- test("Button renders with correct text", () => {
7
- const { getByText } = render(<DxcButton label="Button" />);
8
- expect(getByText("Button")).toBeTruthy();
9
- });
10
- test("Calls correct function on click", () => {
11
- const onClick = jest.fn();
12
- const { getByText } = render(<DxcButton label="Button" onClick={onClick} />);
13
-
14
- const button = getByText("Button");
15
- fireEvent.click(button);
16
- expect(onClick).toHaveBeenCalled();
17
- });
18
- });
package/test/Card.test.js DELETED
@@ -1,30 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcCard from "../src/card/Card";
4
-
5
- describe("Card component tests", () => {
6
- test("Card renders with correct content", () => {
7
- const { getByText } = render(<DxcCard>test-card</DxcCard>);
8
- expect(getByText("test-card")).toBeTruthy();
9
- });
10
-
11
- test("Card renders with correct href", () => {
12
- const { getByRole } = render(<DxcCard linkHref="/testPage">test-card</DxcCard>);
13
- const card = getByRole("link");
14
- expect(card.getAttribute("href")).toEqual("/testPage");
15
- });
16
-
17
- test("Card renders with correct image", () => {
18
- const { getByRole } = render(<DxcCard imageSrc="/testImage">test-card</DxcCard>);
19
- const card = getByRole("img");
20
- expect(card.getAttribute("src")).toEqual("/testImage");
21
- });
22
-
23
- test("OnClick function is called", () => {
24
- const onClick = jest.fn();
25
- const { getByText } = render(<DxcCard onClick={onClick}>test-card</DxcCard>);
26
- const card = getByText("test-card");
27
- fireEvent.click(card);
28
- expect(onClick).toHaveBeenCalled();
29
- });
30
- });
@@ -1,45 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
-
4
- import DxcCheckbox from "../src/checkbox/Checkbox";
5
-
6
- describe("Checkbox component tests", () => {
7
- test("Checkbox renders with correct text", () => {
8
- const { getByText } = render(<DxcCheckbox label="Checkbox" />);
9
-
10
- expect(getByText("Checkbox")).toBeTruthy();
11
- });
12
-
13
- test("Calls correct function on click", () => {
14
- const onChange = jest.fn();
15
- const { getByText } = render(<DxcCheckbox label="Checkbox" onChange={onChange} />);
16
-
17
- fireEvent.click(getByText("Checkbox"));
18
- expect(onChange).toHaveBeenCalled();
19
- });
20
-
21
- test("Uncontrolled checkbox", () => {
22
- const onChange = jest.fn();
23
- const component = render(<DxcCheckbox label="Checkbox" onChange={onChange} />);
24
- const visibleCheckbox = component.getByText("Checkbox");
25
- const input = component.getByRole("checkbox");
26
- expect(input.checked).toBe(false);
27
- fireEvent.click(visibleCheckbox);
28
- expect(onChange).toHaveBeenCalled();
29
- expect(onChange).toHaveBeenCalledWith(true);
30
- expect(input.checked).toBe(true);
31
- });
32
-
33
- test("Controlled checkbox", () => {
34
- const onChange = jest.fn();
35
- const component = render(<DxcCheckbox label="Checkbox" checked={false} onChange={onChange} />);
36
-
37
- const input = component.getByRole("checkbox");
38
- const visibleCheckbox = component.getByText("Checkbox");
39
-
40
- fireEvent.click(visibleCheckbox);
41
- expect(onChange).toHaveBeenCalled();
42
- expect(onChange).toHaveBeenCalledWith(true);
43
- expect(input.checked).toBe(false);
44
- });
45
- });
package/test/Chip.test.js DELETED
@@ -1,25 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcChip from "../src/chip/Chip";
4
- import icon from "../../app/src/images/invision.svg";
5
-
6
- describe("Chip component tests", () => {
7
- test("Chip renders with correct text", () => {
8
- const { getByText } = render(<DxcChip label="Chip" />);
9
- expect(getByText("Chip")).toBeTruthy();
10
- });
11
- test("Calls correct function when clicking on prefix icon", () => {
12
- const onClick = jest.fn();
13
- const { getByText, getByRole } = render(<DxcChip label="Chip" prefixIconSrc={icon} onClickPrefix={onClick} />);
14
- expect(getByText("Chip")).toBeTruthy();
15
- fireEvent.click(getByRole("img"));
16
- expect(onClick).toHaveBeenCalled();
17
- });
18
- test("Calls correct function when clicking on suffix icon", () => {
19
- const onClick = jest.fn();
20
- const { getByText, getByRole } = render(<DxcChip label="Chip" suffixIconSrc={icon} onClickSuffix={onClick} />);
21
- expect(getByText("Chip")).toBeTruthy();
22
- fireEvent.click(getByRole("img"));
23
- expect(onClick).toHaveBeenCalled();
24
- });
25
- });