@dxc-technology/halstack-react 0.0.0-ed1185a → 0.0.0-ee92231

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 (337) 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/{dist/textarea/Textarea.js → V3Textarea/V3Textarea.js} +39 -39
  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/types.d.ts +49 -0
  18. package/alert/types.js +5 -0
  19. package/badge/Badge.js +59 -0
  20. package/box/Box.d.ts +4 -0
  21. package/{dist/box → box}/Box.js +18 -53
  22. package/box/Box.stories.tsx +132 -0
  23. package/box/types.d.ts +47 -0
  24. package/box/types.js +5 -0
  25. package/button/Button.d.ts +4 -0
  26. package/button/Button.js +177 -0
  27. package/button/Button.stories.tsx +293 -0
  28. package/button/types.d.ts +57 -0
  29. package/button/types.js +5 -0
  30. package/card/Card.d.ts +4 -0
  31. package/{dist/card → card}/Card.js +42 -124
  32. package/card/types.d.ts +69 -0
  33. package/card/types.js +5 -0
  34. package/checkbox/Checkbox.d.ts +4 -0
  35. package/{dist/checkbox → checkbox}/Checkbox.js +44 -82
  36. package/checkbox/Checkbox.stories.tsx +192 -0
  37. package/checkbox/types.d.ts +60 -0
  38. package/checkbox/types.js +5 -0
  39. package/{dist/chip → chip}/Chip.js +48 -104
  40. package/chip/index.d.ts +22 -0
  41. package/{dist/common → common}/OpenSans.css +0 -0
  42. package/{dist/common → common}/RequiredComponent.js +3 -11
  43. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  44. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  45. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  46. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  47. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  49. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  50. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  51. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  52. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  53. package/{dist/common → common}/utils.js +0 -0
  54. package/common/variables.js +1569 -0
  55. package/{dist/date → date}/Date.js +71 -57
  56. package/date/index.d.ts +27 -0
  57. package/date-input/DateInput.d.ts +4 -0
  58. package/date-input/DateInput.js +361 -0
  59. package/date-input/types.d.ts +100 -0
  60. package/date-input/types.js +5 -0
  61. package/dialog/Dialog.d.ts +4 -0
  62. package/{dist/dialog → dialog}/Dialog.js +29 -100
  63. package/dialog/types.d.ts +43 -0
  64. package/dialog/types.js +5 -0
  65. package/dropdown/Dropdown.d.ts +4 -0
  66. package/dropdown/Dropdown.js +417 -0
  67. package/dropdown/types.d.ts +89 -0
  68. package/dropdown/types.js +5 -0
  69. package/file-input/FileInput.js +532 -0
  70. package/file-input/FileItem.js +193 -0
  71. package/file-input/index.d.ts +81 -0
  72. package/footer/Footer.d.ts +4 -0
  73. package/footer/Footer.js +266 -0
  74. package/footer/Footer.stories.jsx +151 -0
  75. package/footer/Icons.js +77 -0
  76. package/footer/types.d.ts +61 -0
  77. package/footer/types.js +5 -0
  78. package/header/Header.d.ts +7 -0
  79. package/header/Header.js +324 -0
  80. package/header/Icons.js +34 -0
  81. package/header/types.d.ts +45 -0
  82. package/header/types.js +5 -0
  83. package/{dist/heading → heading}/Heading.js +30 -76
  84. package/heading/index.d.ts +17 -0
  85. package/input-text/Icons.js +22 -0
  86. package/{dist/input-text → input-text}/InputText.js +151 -171
  87. package/input-text/index.d.ts +36 -0
  88. package/{dist/layout → layout}/ApplicationLayout.js +35 -131
  89. package/layout/Icons.js +55 -0
  90. package/link/Link.d.ts +3 -0
  91. package/link/Link.js +161 -0
  92. package/link/types.d.ts +74 -0
  93. package/link/types.js +5 -0
  94. package/main.d.ts +44 -0
  95. package/{dist/main.js → main.js} +121 -69
  96. package/number-input/NumberInput.js +128 -0
  97. package/number-input/NumberInput.stories.jsx +115 -0
  98. package/number-input/NumberInputContext.js +16 -0
  99. package/number-input/index.d.ts +113 -0
  100. package/package.json +34 -25
  101. package/paginator/Icons.js +66 -0
  102. package/paginator/Paginator.d.ts +4 -0
  103. package/paginator/Paginator.js +198 -0
  104. package/paginator/Paginator.stories.tsx +63 -0
  105. package/paginator/types.d.ts +38 -0
  106. package/paginator/types.js +5 -0
  107. package/password-input/PasswordInput.d.ts +4 -0
  108. package/password-input/PasswordInput.js +162 -0
  109. package/password-input/PasswordInput.stories.tsx +131 -0
  110. package/password-input/types.d.ts +100 -0
  111. package/password-input/types.js +5 -0
  112. package/progress-bar/ProgressBar.d.ts +4 -0
  113. package/progress-bar/ProgressBar.js +170 -0
  114. package/progress-bar/ProgressBar.stories.jsx +58 -0
  115. package/progress-bar/types.d.ts +37 -0
  116. package/progress-bar/types.js +5 -0
  117. package/radio/Radio.d.ts +4 -0
  118. package/{dist/radio → radio}/Radio.js +17 -52
  119. package/radio/Radio.stories.tsx +192 -0
  120. package/radio/types.d.ts +54 -0
  121. package/radio/types.js +5 -0
  122. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +77 -135
  123. package/resultsetTable/index.d.ts +19 -0
  124. package/select/Select.js +865 -0
  125. package/select/index.d.ts +131 -0
  126. package/{dist/sidenav → sidenav}/Sidenav.js +20 -58
  127. package/sidenav/index.d.ts +13 -0
  128. package/slider/Slider.d.ts +4 -0
  129. package/slider/Slider.js +306 -0
  130. package/slider/types.d.ts +83 -0
  131. package/slider/types.js +5 -0
  132. package/spinner/Spinner.d.ts +4 -0
  133. package/spinner/Spinner.js +250 -0
  134. package/spinner/Spinner.stories.jsx +102 -0
  135. package/spinner/types.d.ts +32 -0
  136. package/spinner/types.js +5 -0
  137. package/switch/Switch.d.ts +4 -0
  138. package/{dist/switch → switch}/Switch.js +28 -71
  139. package/switch/Switch.stories.tsx +160 -0
  140. package/switch/types.d.ts +58 -0
  141. package/switch/types.js +5 -0
  142. package/table/Table.d.ts +4 -0
  143. package/table/Table.js +118 -0
  144. package/table/Table.stories.jsx +276 -0
  145. package/table/types.d.ts +21 -0
  146. package/table/types.js +5 -0
  147. package/tabs/Tabs.d.ts +4 -0
  148. package/tabs/Tabs.js +211 -0
  149. package/tabs/types.d.ts +71 -0
  150. package/tabs/types.js +5 -0
  151. package/tag/Tag.js +214 -0
  152. package/tag/Tag.stories.jsx +145 -0
  153. package/tag/index.d.ts +24 -0
  154. package/text-input/TextInput.js +825 -0
  155. package/text-input/index.d.ts +135 -0
  156. package/textarea/Textarea.js +317 -0
  157. package/textarea/Textarea.stories.jsx +135 -0
  158. package/textarea/index.d.ts +117 -0
  159. package/{dist/toggle → toggle}/Toggle.js +15 -49
  160. package/toggle/index.d.ts +21 -0
  161. package/toggle-group/ToggleGroup.js +243 -0
  162. package/toggle-group/index.d.ts +21 -0
  163. package/{dist/upload → upload}/Upload.js +11 -19
  164. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  165. package/upload/buttons-upload/Icons.js +40 -0
  166. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  167. package/upload/dragAndDropArea/Icons.js +39 -0
  168. package/upload/file-upload/FileToUpload.js +115 -0
  169. package/upload/file-upload/Icons.js +66 -0
  170. package/{dist/upload → upload}/files-upload/FilesToUpload.js +14 -28
  171. package/upload/index.d.ts +15 -0
  172. package/upload/transaction/Icons.js +160 -0
  173. package/upload/transaction/Transaction.js +104 -0
  174. package/upload/transactions/Transactions.js +94 -0
  175. package/{dist/useTheme.js → useTheme.js} +0 -0
  176. package/wizard/Icons.js +65 -0
  177. package/wizard/Wizard.js +271 -0
  178. package/wizard/index.d.ts +18 -0
  179. package/README.md +0 -66
  180. package/babel.config.js +0 -8
  181. package/dist/BackgroundColorContext.js +0 -46
  182. package/dist/ThemeContext.js +0 -216
  183. package/dist/accordion/Accordion.js +0 -356
  184. package/dist/accordion/Accordion.stories.js +0 -207
  185. package/dist/accordion/readme.md +0 -96
  186. package/dist/accordion-group/AccordionGroup.js +0 -188
  187. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  188. package/dist/accordion-group/readme.md +0 -70
  189. package/dist/alert/Alert.js +0 -388
  190. package/dist/alert/Alert.stories.js +0 -158
  191. package/dist/alert/close.svg +0 -4
  192. package/dist/alert/error.svg +0 -4
  193. package/dist/alert/info.svg +0 -4
  194. package/dist/alert/readme.md +0 -43
  195. package/dist/alert/success.svg +0 -4
  196. package/dist/alert/warning.svg +0 -4
  197. package/dist/badge/Badge.js +0 -61
  198. package/dist/button/Button.js +0 -228
  199. package/dist/button/Button.stories.js +0 -224
  200. package/dist/button/readme.md +0 -93
  201. package/dist/checkbox/Checkbox.stories.js +0 -144
  202. package/dist/checkbox/readme.md +0 -116
  203. package/dist/common/variables.js +0 -1049
  204. package/dist/date/Date.stories.js +0 -205
  205. package/dist/date/calendar.svg +0 -1
  206. package/dist/date/calendar_dark.svg +0 -1
  207. package/dist/date/readme.md +0 -73
  208. package/dist/dialog/Dialog.stories.js +0 -217
  209. package/dist/dialog/readme.md +0 -32
  210. package/dist/dropdown/Dropdown.js +0 -498
  211. package/dist/dropdown/Dropdown.stories.js +0 -249
  212. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  213. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  214. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  215. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  216. package/dist/dropdown/readme.md +0 -69
  217. package/dist/footer/Footer.js +0 -405
  218. package/dist/footer/Footer.stories.js +0 -94
  219. package/dist/footer/dxc_logo_wht.png +0 -0
  220. package/dist/footer/readme.md +0 -41
  221. package/dist/header/Header.js +0 -431
  222. package/dist/header/Header.stories.js +0 -176
  223. package/dist/header/close_icon.svg +0 -1
  224. package/dist/header/dxc_logo_black.png +0 -0
  225. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  226. package/dist/header/dxc_logo_white.png +0 -0
  227. package/dist/header/hamb_menu_black.svg +0 -1
  228. package/dist/header/hamb_menu_white.svg +0 -1
  229. package/dist/header/readme.md +0 -33
  230. package/dist/input-text/InputText.stories.js +0 -209
  231. package/dist/input-text/error.svg +0 -1
  232. package/dist/input-text/readme.md +0 -91
  233. package/dist/layout/facebook.svg +0 -45
  234. package/dist/layout/linkedin.svg +0 -50
  235. package/dist/layout/twitter.svg +0 -53
  236. package/dist/link/Link.js +0 -212
  237. package/dist/link/readme.md +0 -51
  238. package/dist/paginator/Paginator.js +0 -283
  239. package/dist/paginator/images/next.svg +0 -3
  240. package/dist/paginator/images/nextPage.svg +0 -3
  241. package/dist/paginator/images/previous.svg +0 -3
  242. package/dist/paginator/images/previousPage.svg +0 -3
  243. package/dist/paginator/readme.md +0 -50
  244. package/dist/progress-bar/ProgressBar.js +0 -206
  245. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  246. package/dist/progress-bar/readme.md +0 -63
  247. package/dist/radio/Radio.stories.js +0 -166
  248. package/dist/radio/readme.md +0 -70
  249. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  250. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  251. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  252. package/dist/select/Select.js +0 -525
  253. package/dist/select/Select.stories.js +0 -235
  254. package/dist/select/readme.md +0 -72
  255. package/dist/slider/Slider.js +0 -267
  256. package/dist/slider/Slider.stories.js +0 -241
  257. package/dist/slider/readme.md +0 -64
  258. package/dist/spinner/Spinner.js +0 -214
  259. package/dist/spinner/Spinner.stories.js +0 -183
  260. package/dist/spinner/readme.md +0 -65
  261. package/dist/switch/Switch.stories.js +0 -134
  262. package/dist/switch/readme.md +0 -133
  263. package/dist/table/Table.js +0 -118
  264. package/dist/tabs/Tabs.js +0 -347
  265. package/dist/tabs/Tabs.stories.js +0 -130
  266. package/dist/tabs/readme.md +0 -78
  267. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  268. package/dist/tabs-for-sections/readme.md +0 -78
  269. package/dist/tag/Tag.js +0 -268
  270. package/dist/toggle/Toggle.stories.js +0 -297
  271. package/dist/toggle/readme.md +0 -80
  272. package/dist/toggle-group/ToggleGroup.js +0 -241
  273. package/dist/toggle-group/readme.md +0 -82
  274. package/dist/upload/Upload.stories.js +0 -72
  275. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -123
  276. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  277. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  278. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -293
  279. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  280. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  281. package/dist/upload/file-upload/FileToUpload.js +0 -162
  282. package/dist/upload/file-upload/audio-icon.svg +0 -4
  283. package/dist/upload/file-upload/close.svg +0 -4
  284. package/dist/upload/file-upload/file-icon.svg +0 -4
  285. package/dist/upload/file-upload/video-icon.svg +0 -4
  286. package/dist/upload/readme.md +0 -37
  287. package/dist/upload/transaction/Transaction.js +0 -152
  288. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  289. package/dist/upload/transaction/audio-icon.svg +0 -4
  290. package/dist/upload/transaction/error-icon.svg +0 -4
  291. package/dist/upload/transaction/file-icon-err.svg +0 -4
  292. package/dist/upload/transaction/file-icon.svg +0 -4
  293. package/dist/upload/transaction/image-icon-err.svg +0 -4
  294. package/dist/upload/transaction/image-icon.svg +0 -4
  295. package/dist/upload/transaction/success-icon.svg +0 -4
  296. package/dist/upload/transaction/video-icon-err.svg +0 -4
  297. package/dist/upload/transaction/video-icon.svg +0 -4
  298. package/dist/upload/transactions/Transactions.js +0 -122
  299. package/dist/wizard/Wizard.js +0 -383
  300. package/dist/wizard/invalid_icon.svg +0 -6
  301. package/dist/wizard/valid_icon.svg +0 -6
  302. package/dist/wizard/validation-wrong.svg +0 -6
  303. package/test/Accordion.test.js +0 -33
  304. package/test/AccordionGroup.test.js +0 -125
  305. package/test/Alert.test.js +0 -53
  306. package/test/Box.test.js +0 -10
  307. package/test/Button.test.js +0 -18
  308. package/test/Card.test.js +0 -30
  309. package/test/Checkbox.test.js +0 -45
  310. package/test/Chip.test.js +0 -25
  311. package/test/Date.test.js +0 -393
  312. package/test/Dialog.test.js +0 -23
  313. package/test/Dropdown.test.js +0 -130
  314. package/test/Footer.test.js +0 -99
  315. package/test/Header.test.js +0 -39
  316. package/test/Heading.test.js +0 -35
  317. package/test/InputText.test.js +0 -240
  318. package/test/Link.test.js +0 -42
  319. package/test/Paginator.test.js +0 -177
  320. package/test/ProgressBar.test.js +0 -35
  321. package/test/Radio.test.js +0 -37
  322. package/test/ResultsetTable.test.js +0 -330
  323. package/test/Select.test.js +0 -192
  324. package/test/Sidenav.test.js +0 -45
  325. package/test/Slider.test.js +0 -82
  326. package/test/Spinner.test.js +0 -27
  327. package/test/Switch.test.js +0 -45
  328. package/test/Table.test.js +0 -36
  329. package/test/Tabs.test.js +0 -109
  330. package/test/TabsForSections.test.js +0 -34
  331. package/test/Tag.test.js +0 -32
  332. package/test/TextArea.test.js +0 -52
  333. package/test/ToggleGroup.test.js +0 -81
  334. package/test/Upload.test.js +0 -60
  335. package/test/Wizard.test.js +0 -130
  336. package/test/mocks/pngMock.js +0 -1
  337. 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
- });