@dxc-technology/halstack-react 0.0.0-5d4ab44 → 0.0.0-5e25467

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 (375) 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 +126 -0
  23. package/box/Box.stories.tsx +132 -0
  24. package/box/types.d.ts +43 -0
  25. package/box/types.js +5 -0
  26. package/button/Button.d.ts +4 -0
  27. package/button/Button.js +179 -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 +164 -0
  33. package/card/Card.stories.tsx +201 -0
  34. package/card/ice-cream.jpg +0 -0
  35. package/card/types.d.ts +67 -0
  36. package/card/types.js +5 -0
  37. package/checkbox/Checkbox.d.ts +4 -0
  38. package/checkbox/Checkbox.js +253 -0
  39. package/checkbox/Checkbox.stories.tsx +192 -0
  40. package/checkbox/types.d.ts +60 -0
  41. package/checkbox/types.js +5 -0
  42. package/chip/Chip.js +221 -0
  43. package/chip/Chip.stories.tsx +121 -0
  44. package/chip/index.d.ts +22 -0
  45. package/{dist/common → common}/OpenSans.css +0 -0
  46. package/common/RequiredComponent.js +32 -0
  47. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  49. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  50. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  51. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  52. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  53. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  54. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  55. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  56. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  57. package/{dist/common → common}/utils.js +0 -0
  58. package/common/variables.js +1577 -0
  59. package/{dist/date → date}/Date.js +121 -93
  60. package/date/index.d.ts +27 -0
  61. package/date-input/DateInput.d.ts +4 -0
  62. package/date-input/DateInput.js +361 -0
  63. package/date-input/DateInput.stories.tsx +138 -0
  64. package/date-input/types.d.ts +100 -0
  65. package/date-input/types.js +5 -0
  66. package/dialog/Dialog.d.ts +4 -0
  67. package/dialog/Dialog.js +165 -0
  68. package/dialog/Dialog.stories.tsx +212 -0
  69. package/dialog/types.d.ts +43 -0
  70. package/dialog/types.js +5 -0
  71. package/dropdown/Dropdown.d.ts +4 -0
  72. package/dropdown/Dropdown.js +417 -0
  73. package/dropdown/types.d.ts +89 -0
  74. package/dropdown/types.js +5 -0
  75. package/file-input/FileInput.d.ts +4 -0
  76. package/file-input/FileInput.js +511 -0
  77. package/file-input/FileItem.d.ts +14 -0
  78. package/file-input/FileItem.js +182 -0
  79. package/file-input/types.d.ts +87 -0
  80. package/file-input/types.js +5 -0
  81. package/footer/Footer.d.ts +4 -0
  82. package/footer/Footer.js +266 -0
  83. package/footer/Footer.stories.jsx +151 -0
  84. package/footer/Icons.js +77 -0
  85. package/footer/types.d.ts +61 -0
  86. package/footer/types.js +5 -0
  87. package/header/Header.d.ts +7 -0
  88. package/header/Header.js +324 -0
  89. package/header/Header.stories.tsx +162 -0
  90. package/header/Icons.js +34 -0
  91. package/header/types.d.ts +47 -0
  92. package/header/types.js +5 -0
  93. package/heading/Heading.d.ts +4 -0
  94. package/heading/Heading.js +159 -0
  95. package/heading/Heading.stories.tsx +53 -0
  96. package/heading/types.d.ts +33 -0
  97. package/heading/types.js +5 -0
  98. package/input-text/Icons.js +22 -0
  99. package/input-text/InputText.js +611 -0
  100. package/input-text/index.d.ts +36 -0
  101. package/layout/ApplicationLayout.js +235 -0
  102. package/layout/Icons.js +55 -0
  103. package/link/Link.d.ts +3 -0
  104. package/link/Link.js +161 -0
  105. package/link/Link.stories.tsx +146 -0
  106. package/link/types.d.ts +74 -0
  107. package/link/types.js +5 -0
  108. package/main.d.ts +44 -0
  109. package/{dist/main.js → main.js} +147 -47
  110. package/number-input/NumberInput.d.ts +4 -0
  111. package/number-input/NumberInput.js +86 -0
  112. package/number-input/NumberInput.stories.tsx +115 -0
  113. package/number-input/NumberInputContext.d.ts +4 -0
  114. package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +6 -2
  115. package/number-input/numberInputContextTypes.d.ts +19 -0
  116. package/number-input/numberInputContextTypes.js +5 -0
  117. package/number-input/types.d.ts +117 -0
  118. package/number-input/types.js +5 -0
  119. package/package.json +42 -24
  120. package/paginator/Icons.js +66 -0
  121. package/paginator/Paginator.d.ts +4 -0
  122. package/paginator/Paginator.js +198 -0
  123. package/paginator/Paginator.stories.tsx +63 -0
  124. package/paginator/types.d.ts +38 -0
  125. package/paginator/types.js +5 -0
  126. package/password-input/PasswordInput.d.ts +4 -0
  127. package/password-input/PasswordInput.js +162 -0
  128. package/password-input/PasswordInput.stories.tsx +131 -0
  129. package/password-input/types.d.ts +105 -0
  130. package/password-input/types.js +5 -0
  131. package/progress-bar/ProgressBar.d.ts +4 -0
  132. package/progress-bar/ProgressBar.js +170 -0
  133. package/progress-bar/ProgressBar.stories.jsx +58 -0
  134. package/progress-bar/types.d.ts +37 -0
  135. package/progress-bar/types.js +5 -0
  136. package/radio/Radio.d.ts +4 -0
  137. package/radio/Radio.js +174 -0
  138. package/radio/Radio.stories.tsx +192 -0
  139. package/radio/types.d.ts +54 -0
  140. package/radio/types.js +5 -0
  141. package/resultsetTable/ResultsetTable.d.ts +4 -0
  142. package/resultsetTable/ResultsetTable.js +251 -0
  143. package/resultsetTable/types.d.ts +67 -0
  144. package/resultsetTable/types.js +5 -0
  145. package/select/Select.js +865 -0
  146. package/select/Select.stories.tsx +572 -0
  147. package/select/index.d.ts +131 -0
  148. package/sidenav/Sidenav.d.ts +9 -0
  149. package/sidenav/Sidenav.js +136 -0
  150. package/sidenav/Sidenav.stories.tsx +165 -0
  151. package/sidenav/types.d.ts +50 -0
  152. package/sidenav/types.js +5 -0
  153. package/slider/Slider.d.ts +4 -0
  154. package/slider/Slider.js +317 -0
  155. package/slider/Slider.stories.tsx +177 -0
  156. package/slider/types.d.ts +78 -0
  157. package/slider/types.js +5 -0
  158. package/spinner/Spinner.d.ts +4 -0
  159. package/spinner/Spinner.js +250 -0
  160. package/spinner/Spinner.stories.jsx +102 -0
  161. package/spinner/types.d.ts +32 -0
  162. package/spinner/types.js +5 -0
  163. package/switch/Switch.d.ts +4 -0
  164. package/switch/Switch.js +179 -0
  165. package/switch/Switch.stories.tsx +160 -0
  166. package/switch/types.d.ts +58 -0
  167. package/switch/types.js +5 -0
  168. package/table/Table.d.ts +4 -0
  169. package/table/Table.js +118 -0
  170. package/table/Table.stories.jsx +276 -0
  171. package/table/types.d.ts +21 -0
  172. package/table/types.js +5 -0
  173. package/tabs/Tabs.d.ts +4 -0
  174. package/tabs/Tabs.js +213 -0
  175. package/tabs/Tabs.stories.tsx +121 -0
  176. package/tabs/types.d.ts +70 -0
  177. package/tabs/types.js +5 -0
  178. package/tag/Tag.d.ts +4 -0
  179. package/tag/Tag.js +193 -0
  180. package/tag/Tag.stories.tsx +145 -0
  181. package/tag/types.d.ts +60 -0
  182. package/tag/types.js +5 -0
  183. package/text-input/TextInput.d.ts +4 -0
  184. package/text-input/TextInput.js +785 -0
  185. package/text-input/types.d.ts +157 -0
  186. package/text-input/types.js +5 -0
  187. package/textarea/Textarea.js +317 -0
  188. package/textarea/Textarea.stories.jsx +135 -0
  189. package/textarea/index.d.ts +117 -0
  190. package/{dist/toggle → toggle}/Toggle.js +30 -67
  191. package/toggle/index.d.ts +21 -0
  192. package/toggle-group/ToggleGroup.d.ts +4 -0
  193. package/toggle-group/ToggleGroup.js +217 -0
  194. package/toggle-group/ToggleGroup.stories.tsx +178 -0
  195. package/toggle-group/types.d.ts +84 -0
  196. package/toggle-group/types.js +5 -0
  197. package/{dist/upload → upload}/Upload.js +23 -22
  198. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  199. package/upload/buttons-upload/Icons.js +40 -0
  200. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  201. package/upload/dragAndDropArea/Icons.js +39 -0
  202. package/upload/file-upload/FileToUpload.js +115 -0
  203. package/upload/file-upload/Icons.js +66 -0
  204. package/upload/files-upload/FilesToUpload.js +109 -0
  205. package/upload/index.d.ts +15 -0
  206. package/upload/transaction/Icons.js +160 -0
  207. package/upload/transaction/Transaction.js +104 -0
  208. package/upload/transactions/Transactions.js +94 -0
  209. package/useTheme.js +22 -0
  210. package/wizard/Icons.js +65 -0
  211. package/wizard/Wizard.d.ts +4 -0
  212. package/wizard/Wizard.js +231 -0
  213. package/wizard/Wizard.stories.jsx +224 -0
  214. package/wizard/types.d.ts +64 -0
  215. package/wizard/types.js +5 -0
  216. package/babel.config.js +0 -4
  217. package/dist/accordion/Accordion.js +0 -264
  218. package/dist/accordion/Accordion.stories.js +0 -207
  219. package/dist/accordion/readme.md +0 -96
  220. package/dist/alert/Alert.js +0 -302
  221. package/dist/alert/Alert.stories.js +0 -158
  222. package/dist/alert/close.svg +0 -4
  223. package/dist/alert/error.svg +0 -4
  224. package/dist/alert/info.svg +0 -4
  225. package/dist/alert/readme.md +0 -43
  226. package/dist/alert/success.svg +0 -4
  227. package/dist/alert/warning.svg +0 -4
  228. package/dist/box/Box.js +0 -136
  229. package/dist/button/Button.js +0 -187
  230. package/dist/button/Button.stories.js +0 -224
  231. package/dist/button/readme.md +0 -93
  232. package/dist/card/Card.js +0 -246
  233. package/dist/checkbox/Checkbox.js +0 -221
  234. package/dist/checkbox/Checkbox.stories.js +0 -144
  235. package/dist/checkbox/readme.md +0 -116
  236. package/dist/common/RequiredComponent.js +0 -50
  237. package/dist/common/services/example-service.js +0 -10
  238. package/dist/common/services/example-service.test.js +0 -12
  239. package/dist/common/variables.js +0 -77
  240. package/dist/date/Date.stories.js +0 -205
  241. package/dist/date/calendar.svg +0 -1
  242. package/dist/date/calendar_dark.svg +0 -1
  243. package/dist/date/readme.md +0 -73
  244. package/dist/dialog/Dialog.js +0 -164
  245. package/dist/dialog/Dialog.stories.js +0 -217
  246. package/dist/dialog/readme.md +0 -32
  247. package/dist/dropdown/Dropdown.js +0 -412
  248. package/dist/dropdown/Dropdown.stories.js +0 -249
  249. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  250. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  251. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  252. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  253. package/dist/dropdown/readme.md +0 -69
  254. package/dist/footer/Footer.js +0 -341
  255. package/dist/footer/Footer.stories.js +0 -94
  256. package/dist/footer/dxc_logo_wht.png +0 -0
  257. package/dist/footer/readme.md +0 -41
  258. package/dist/header/Header.js +0 -343
  259. package/dist/header/Header.stories.js +0 -176
  260. package/dist/header/close_icon.svg +0 -1
  261. package/dist/header/dxc_logo_black.png +0 -0
  262. package/dist/header/dxc_logo_white.png +0 -0
  263. package/dist/header/hamb_menu_black.svg +0 -1
  264. package/dist/header/hamb_menu_white.svg +0 -1
  265. package/dist/header/readme.md +0 -33
  266. package/dist/heading/Heading.js +0 -159
  267. package/dist/input-text/InputText.js +0 -510
  268. package/dist/input-text/InputText.stories.js +0 -209
  269. package/dist/input-text/error.svg +0 -1
  270. package/dist/input-text/readme.md +0 -91
  271. package/dist/link/Link.js +0 -129
  272. package/dist/link/readme.md +0 -51
  273. package/dist/paginator/Paginator.js +0 -178
  274. package/dist/paginator/images/next.svg +0 -3
  275. package/dist/paginator/images/nextPage.svg +0 -3
  276. package/dist/paginator/images/previous.svg +0 -3
  277. package/dist/paginator/images/previousPage.svg +0 -3
  278. package/dist/paginator/readme.md +0 -50
  279. package/dist/progress-bar/ProgressBar.js +0 -189
  280. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  281. package/dist/progress-bar/readme.md +0 -63
  282. package/dist/radio/Radio.js +0 -204
  283. package/dist/radio/Radio.stories.js +0 -166
  284. package/dist/radio/readme.md +0 -70
  285. package/dist/resultsetTable/ResultsetTable.js +0 -334
  286. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  287. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  288. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  289. package/dist/select/Select.js +0 -425
  290. package/dist/select/Select.stories.js +0 -235
  291. package/dist/select/readme.md +0 -72
  292. package/dist/sidenav/Sidenav.js +0 -217
  293. package/dist/sidenav/arrow_icon.svg +0 -3
  294. package/dist/slider/Slider.js +0 -268
  295. package/dist/slider/Slider.stories.js +0 -241
  296. package/dist/slider/readme.md +0 -64
  297. package/dist/spinner/Spinner.js +0 -196
  298. package/dist/spinner/Spinner.stories.js +0 -183
  299. package/dist/spinner/readme.md +0 -65
  300. package/dist/switch/Switch.js +0 -219
  301. package/dist/switch/Switch.stories.js +0 -134
  302. package/dist/switch/readme.md +0 -133
  303. package/dist/table/Table.js +0 -84
  304. package/dist/tabs/Tabs.js +0 -183
  305. package/dist/tabs/Tabs.stories.js +0 -130
  306. package/dist/tabs/readme.md +0 -78
  307. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  308. package/dist/tabs-for-sections/readme.md +0 -78
  309. package/dist/tag/Tag.js +0 -217
  310. package/dist/textarea/Textarea.js +0 -226
  311. package/dist/toggle/Toggle.stories.js +0 -297
  312. package/dist/toggle/readme.md +0 -80
  313. package/dist/upload/Upload.stories.js +0 -72
  314. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -125
  315. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  316. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  317. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -282
  318. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  319. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  320. package/dist/upload/file-upload/FileToUpload.js +0 -158
  321. package/dist/upload/file-upload/audio-icon.svg +0 -4
  322. package/dist/upload/file-upload/close.svg +0 -4
  323. package/dist/upload/file-upload/file-icon.svg +0 -4
  324. package/dist/upload/file-upload/video-icon.svg +0 -4
  325. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  326. package/dist/upload/readme.md +0 -37
  327. package/dist/upload/transaction/Transaction.js +0 -155
  328. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  329. package/dist/upload/transaction/audio-icon.svg +0 -4
  330. package/dist/upload/transaction/error-icon.svg +0 -4
  331. package/dist/upload/transaction/file-icon-err.svg +0 -4
  332. package/dist/upload/transaction/file-icon.svg +0 -4
  333. package/dist/upload/transaction/image-icon-err.svg +0 -4
  334. package/dist/upload/transaction/image-icon.svg +0 -4
  335. package/dist/upload/transaction/success-icon.svg +0 -4
  336. package/dist/upload/transaction/video-icon-err.svg +0 -4
  337. package/dist/upload/transaction/video-icon.svg +0 -4
  338. package/dist/upload/transactions/Transactions.js +0 -120
  339. package/dist/wizard/Wizard.js +0 -310
  340. package/dist/wizard/invalid_icon.svg +0 -6
  341. package/dist/wizard/valid_icon.svg +0 -6
  342. package/dist/wizard/validation-wrong.svg +0 -6
  343. package/test/Accordion.test.js +0 -33
  344. package/test/Alert.test.js +0 -53
  345. package/test/Box.test.js +0 -10
  346. package/test/Button.test.js +0 -18
  347. package/test/Card.test.js +0 -30
  348. package/test/Checkbox.test.js +0 -45
  349. package/test/Date.test.js +0 -393
  350. package/test/Dialog.test.js +0 -23
  351. package/test/Dropdown.test.js +0 -130
  352. package/test/Footer.test.js +0 -99
  353. package/test/Header.test.js +0 -39
  354. package/test/Heading.test.js +0 -35
  355. package/test/InputText.test.js +0 -236
  356. package/test/Link.test.js +0 -25
  357. package/test/Paginator.test.js +0 -165
  358. package/test/ProgressBar.test.js +0 -35
  359. package/test/Radio.test.js +0 -37
  360. package/test/ResultsetTable.test.js +0 -282
  361. package/test/Select.test.js +0 -191
  362. package/test/Sidenav.test.js +0 -87
  363. package/test/Slider.test.js +0 -65
  364. package/test/Spinner.test.js +0 -27
  365. package/test/Switch.test.js +0 -45
  366. package/test/Table.test.js +0 -36
  367. package/test/Tabs.test.js +0 -88
  368. package/test/TabsForSections.test.js +0 -34
  369. package/test/Tag.test.js +0 -32
  370. package/test/TextArea.test.js +0 -52
  371. package/test/Toggle.test.js +0 -43
  372. package/test/Upload.test.js +0 -60
  373. package/test/Wizard.test.js +0 -130
  374. package/test/mocks/pngMock.js +0 -1
  375. package/test/mocks/svgMock.js +0 -1
@@ -1,165 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcPaginator from "../src/paginator/Paginator";
4
- import DxcButton from "../src/button/Button";
5
-
6
- describe("Paginator component tests", () => {
7
- test("Paginator renders with default values", () => {
8
- const { getByText } = render(<DxcPaginator></DxcPaginator>);
9
- expect(getByText("1 to 1 of 1")).toBeTruthy();
10
- expect(getByText("Page: 1 of 1")).toBeTruthy();
11
- });
12
-
13
- test("Paginator renders with currentPage", () => {
14
- const { getByText } = render(<DxcPaginator currentPage={2}></DxcPaginator>);
15
- expect(getByText("Page: 2 of 1")).toBeTruthy();
16
- });
17
-
18
- test("Paginator renders with itemsPerPage", () => {
19
- const { getByText } = render(<DxcPaginator currentPage={1} itemsPerPage={10} totalItems={20}></DxcPaginator>);
20
- expect(getByText("1 to 10 of 20")).toBeTruthy();
21
- expect(getByText("Page: 1 of 2")).toBeTruthy();
22
- });
23
-
24
- test("Paginator renders with totalItems", () => {
25
- const { getByText } = render(<DxcPaginator totalItems={20}></DxcPaginator>);
26
- expect(getByText("1 to 5 of 20")).toBeTruthy();
27
- expect(getByText("Page: 1 of 4")).toBeTruthy();
28
- });
29
-
30
- test("Paginator renders with correct text in second page", () => {
31
- const { getByText } = render(<DxcPaginator currentPage={2} itemsPerPage={10} totalItems={20}></DxcPaginator>);
32
- expect(getByText("11 to 20 of 20")).toBeTruthy();
33
- expect(getByText("Page: 2 of 2")).toBeTruthy();
34
- });
35
-
36
- test("Call correct nextFunction", () => {
37
- const onClick = jest.fn();
38
- const { getByRole } = render(
39
- <DxcPaginator nextFunction={onClick} currentPage={1} itemsPerPage={10} totalItems={20}></DxcPaginator>
40
- );
41
- const nextButton = getByRole("button");
42
- fireEvent.click(nextButton);
43
- expect(onClick).toHaveBeenCalled();
44
- });
45
-
46
- test("Call correct lastFunction", () => {
47
- const onClick = jest.fn();
48
- const { getByRole } = render(
49
- <DxcPaginator lastFunction={onClick} currentPage={1} itemsPerPage={10} totalItems={20}></DxcPaginator>
50
- );
51
- const lastButton = getByRole("button");
52
- fireEvent.click(lastButton);
53
- expect(onClick).toHaveBeenCalledWith(2);
54
- });
55
-
56
- test("Call correct prevFunction", () => {
57
- const onClick = jest.fn();
58
- const { getByRole } = render(
59
- <DxcPaginator prevFunction={onClick} currentPage={2} itemsPerPage={10} totalItems={20}></DxcPaginator>
60
- );
61
- const prevButton = getByRole("button");
62
- fireEvent.click(prevButton);
63
- expect(onClick).toHaveBeenCalled();
64
- });
65
-
66
- test("Call correct firstFunction", () => {
67
- const onClick = jest.fn();
68
- const { getByRole } = render(
69
- <DxcPaginator firstFunction={onClick} currentPage={2} itemsPerPage={10} totalItems={30}></DxcPaginator>
70
- );
71
- const firstButton = getByRole("button");
72
- fireEvent.click(firstButton);
73
- expect(onClick).toHaveBeenCalled();
74
- });
75
-
76
- test("Next button is disable in last page", () => {
77
- const onClick = jest.fn();
78
- const { getByRole } = render(
79
- <DxcPaginator nextFunction={onClick} currentPage={2} itemsPerPage={10} totalItems={20}></DxcPaginator>
80
- );
81
- const nextButton = getByRole("button");
82
- expect(nextButton.hasAttribute("disabled")).toBeTruthy();
83
- fireEvent.click(nextButton);
84
- expect(onClick).toHaveBeenCalledTimes(0);
85
- });
86
-
87
- test("Last button is disable in last page", () => {
88
- const onClick = jest.fn();
89
- const { getByRole } = render(
90
- <DxcPaginator lastFunction={onClick} currentPage={2} itemsPerPage={10} totalItems={20}></DxcPaginator>
91
- );
92
- const lastButton = getByRole("button");
93
- expect(lastButton.hasAttribute("disabled")).toBeTruthy();
94
- fireEvent.click(lastButton);
95
- expect(onClick).toHaveBeenCalledTimes(0);
96
- });
97
-
98
- test("First button is disable in first page", () => {
99
- const onClick = jest.fn();
100
- const { getByRole } = render(
101
- <DxcPaginator firstFunction={onClick} currentPage={1} itemsPerPage={10} totalItems={20}></DxcPaginator>
102
- );
103
- const lastButton = getByRole("button");
104
- expect(lastButton.hasAttribute("disabled")).toBeTruthy();
105
- fireEvent.click(lastButton);
106
- expect(onClick).toHaveBeenCalledTimes(0);
107
- });
108
-
109
- test("Previous button is disable in first page", () => {
110
- const onClick = jest.fn();
111
- const { getByRole } = render(
112
- <DxcPaginator prevFunction={onClick} currentPage={1} itemsPerPage={10} totalItems={20}></DxcPaginator>
113
- );
114
- const lastButton = getByRole("button");
115
- expect(lastButton.hasAttribute("disabled")).toBeTruthy();
116
- fireEvent.click(lastButton);
117
- expect(onClick).toHaveBeenCalledTimes(0);
118
- });
119
-
120
- test("Last and next buttons are disable in last page", () => {
121
- const onClick = jest.fn();
122
- const { getAllByRole } = render(
123
- <DxcPaginator
124
- prevFunction={onClick}
125
- firstFunction={onClick}
126
- nextFunction={onClick}
127
- lastFunction={onClick}
128
- currentPage={2}
129
- itemsPerPage={10}
130
- totalItems={20}
131
- ></DxcPaginator>
132
- );
133
- const firstButton = getAllByRole("button")[0];
134
- const prevButton = getAllByRole("button")[1];
135
- const nextButton = getAllByRole("button")[2];
136
- const lastButton = getAllByRole("button")[3];
137
- expect(firstButton.hasAttribute("disabled")).toBeFalsy();
138
- expect(prevButton.hasAttribute("disabled")).toBeFalsy();
139
- expect(nextButton.hasAttribute("disabled")).toBeTruthy();
140
- expect(lastButton.hasAttribute("disabled")).toBeTruthy();
141
- });
142
-
143
- test("First and previous buttons are disable in first page", () => {
144
- const onClick = jest.fn();
145
- const { getAllByRole } = render(
146
- <DxcPaginator
147
- prevFunction={onClick}
148
- firstFunction={onClick}
149
- nextFunction={onClick}
150
- lastFunction={onClick}
151
- currentPage={1}
152
- itemsPerPage={10}
153
- totalItems={20}
154
- ></DxcPaginator>
155
- );
156
- const firstButton = getAllByRole("button")[0];
157
- const prevButton = getAllByRole("button")[1];
158
- const nextButton = getAllByRole("button")[2];
159
- const lastButton = getAllByRole("button")[3];
160
- expect(firstButton.hasAttribute("disabled")).toBeTruthy();
161
- expect(prevButton.hasAttribute("disabled")).toBeTruthy();
162
- expect(nextButton.hasAttribute("disabled")).toBeFalsy();
163
- expect(lastButton.hasAttribute("disabled")).toBeFalsy();
164
- });
165
- });
@@ -1,35 +0,0 @@
1
- import React from "react";
2
- import { render } from "@testing-library/react";
3
- import DxcProgressBar from "../src/progress-bar/ProgressBar";
4
-
5
- describe("ProgressBar component tests", () => {
6
- test("ProgressBar renders with label", () => {
7
- const { getByText } = render(<DxcProgressBar label="test-label"></DxcProgressBar>);
8
- expect(getByText("test-label")).toBeTruthy();
9
- });
10
-
11
- test("Overlay progressBar renders with label", () => {
12
- const { getByText } = render(<DxcProgressBar label="test-label" overlay></DxcProgressBar>);
13
- expect(getByText("test-label")).toBeTruthy();
14
- });
15
-
16
- test("ProgressBar renders with default value", () => {
17
- const { getByText } = render(<DxcProgressBar showValue></DxcProgressBar>);
18
- expect(getByText("100 %")).toBeTruthy();
19
- });
20
-
21
- test("Overlay progressBar renders with default value", () => {
22
- const { getByText } = render(<DxcProgressBar showValue overlay></DxcProgressBar>);
23
- expect(getByText("100 %")).toBeTruthy();
24
- });
25
-
26
- test("ProgressBar renders with value", () => {
27
- const { getByText } = render(<DxcProgressBar showValue value={25}></DxcProgressBar>);
28
- expect(getByText("25 %")).toBeTruthy();
29
- });
30
-
31
- test("Overlay progressBar renders with value", () => {
32
- const { getByText } = render(<DxcProgressBar showValue value={25} overlay></DxcProgressBar>);
33
- expect(getByText("25 %")).toBeTruthy();
34
- });
35
- });
@@ -1,37 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcRadio from "../src/radio/Radio";
4
-
5
- describe("Radio component tests", () => {
6
- test("Radio renders correctly", () => {
7
- const { getByText } = render(<DxcRadio label="Radio button" />);
8
- expect(getByText("Radio button")).toBeTruthy();
9
- });
10
- test("Calls correct function on click", () => {
11
- const onClick = jest.fn();
12
- const { getByText} = render(<DxcRadio label="Radio button" onClick={onClick} />);
13
- fireEvent.click(getByText("Radio button"));
14
-
15
- expect(onClick).toHaveBeenCalled();
16
- expect(onClick).toHaveBeenCalledWith(true);
17
- });
18
- test("Controlled Radio", () => {
19
- const onClick = jest.fn();
20
- const { getByText, getByRole } = render(<DxcRadio label="Radio button" checked={false} onClick={onClick} />);
21
- expect(getByRole("radio").checked).toBe(false);
22
- fireEvent.click(getByText("Radio button"));
23
- expect(onClick).toHaveBeenCalled();
24
- expect(onClick).toHaveBeenCalledWith(true);
25
- expect(getByRole("radio").checked).toBe(false);
26
- });
27
- test("Uncontrolled Radio", () => {
28
- const onClick = jest.fn();
29
- const { getByText, getByRole } = render(<DxcRadio label="Radio button" onClick={onClick} />);
30
- expect(getByRole("radio").checked).toBe(false);
31
- fireEvent.click(getByText("Radio button"));
32
- expect(onClick).toHaveBeenCalled();
33
- expect(onClick).toHaveBeenCalledWith(true);
34
- expect(getByRole("radio").checked).toBe(false);
35
- });
36
-
37
- });
@@ -1,282 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcResultsetTable from "../src/resultsetTable/ResultsetTable";
4
-
5
- const columns = [
6
- {
7
- displayValue: "Id",
8
- isSortable: false,
9
- },
10
- {
11
- displayValue: "Name",
12
- isSortable: true,
13
- },
14
- {
15
- displayValue: "City",
16
- isSortable: false,
17
- }
18
- ];
19
-
20
- const rows = [
21
- [
22
- {
23
- displayValue: "001",
24
- sortValue: "001",
25
- },
26
- {
27
- displayValue: "Peter",
28
- sortValue: "Peter",
29
- },
30
- {
31
- displayValue: "Oviedo",
32
- sortValue: "Oviedo",
33
- }
34
- ],
35
- [
36
- {
37
- displayValue: "002",
38
- sortValue: "002",
39
- },
40
- {
41
- displayValue: "Louis",
42
- sortValue: "Louis",
43
- },
44
- {
45
- displayValue: "Oviedo",
46
- sortValue: "Oviedo",
47
- },
48
- {
49
- displayValue: "",
50
- },
51
- ],
52
- [
53
- {
54
- displayValue: "003",
55
- sortValue: "003",
56
- },
57
- {
58
- displayValue: "Lana",
59
- sortValue: "Lana",
60
- },
61
- {
62
- displayValue: "Albacete",
63
- sortValue: "Albacete",
64
- }
65
- ],
66
- [
67
- {
68
- displayValue: "004",
69
- sortValue: "004",
70
- },
71
- {
72
- displayValue: "Rick",
73
- sortValue: "Rick",
74
- },
75
- {
76
- displayValue: "Albacete",
77
- sortValue: "Albacete",
78
- }
79
- ],
80
- [
81
- {
82
- displayValue: "005",
83
- sortValue: "005",
84
- },
85
- {
86
- displayValue: "Mark",
87
- sortValue: "Mark",
88
- },
89
- {
90
- displayValue: "Madrid",
91
- sortValue: "Madrid",
92
- }
93
- ],
94
- [
95
- {
96
- displayValue: "006",
97
- sortValue: "006",
98
- },
99
- {
100
- displayValue: "Cris",
101
- sortValue: "Cris",
102
- },
103
- {
104
- displayValue: "Barcelona",
105
- sortValue: "Barcelona",
106
- },
107
- {
108
- displayValue: "",
109
- },
110
- ],
111
- [
112
- {
113
- displayValue: "007",
114
- sortValue: "007",
115
- },
116
- {
117
- displayValue: "Susan",
118
- sortValue: "Susan",
119
- },
120
- {
121
- displayValue: "Madrid",
122
- sortValue: "Madrid",
123
- }
124
- ],
125
- [
126
- {
127
- displayValue: "008",
128
- sortValue: "008",
129
- },
130
- {
131
- displayValue: "Tina",
132
- sortValue: "Tina",
133
- },
134
- {
135
- displayValue: "Barcelona",
136
- sortValue: "Barcelona",
137
- }
138
- ],
139
- [
140
- {
141
- displayValue: "009",
142
- sortValue: "009",
143
- },
144
- {
145
- displayValue: "Kevin",
146
- sortValue: "Kevin",
147
- },
148
- {
149
- displayValue: "Oviedo",
150
- sortValue: "Oviedo",
151
- },
152
- {
153
- displayValue: "",
154
- },
155
- ],
156
- [
157
- {
158
- displayValue: "010",
159
- sortValue: "010",
160
- },
161
- {
162
- displayValue: "Cosmin",
163
- sortValue: "Cosmin",
164
- },
165
- {
166
- displayValue: "Barcelona",
167
- sortValue: "Barcelona",
168
- },
169
- {
170
- displayValue: "",
171
- },
172
- ],
173
- ];
174
-
175
- const rows2 = [
176
- [
177
- {
178
- displayValue: "546",
179
- sortValue: "465",
180
- },
181
- {
182
- displayValue: "OtherValue",
183
- sortValue: "OtherValue",
184
- },
185
- {
186
- displayValue: "OtherValue",
187
- sortValue: "OtherValue",
188
- }
189
- ],
190
- [
191
- {
192
- displayValue: "978",
193
- sortValue: "465",
194
- },
195
- {
196
- displayValue: "OtherValue",
197
- sortValue: "OtherValue",
198
- },
199
- {
200
- displayValue: "OtherValue",
201
- sortValue: "OtherValue",
202
- },
203
- {
204
- displayValue: "",
205
- },
206
- ],
207
- [
208
- {
209
- displayValue: "678",
210
- sortValue: "344",
211
- },
212
- {
213
- displayValue: "OtherValue",
214
- sortValue: "OtherValue",
215
- },
216
- {
217
- displayValue: "OtherValue",
218
- sortValue: "OtherValue",
219
- }
220
- ],
221
- ];
222
-
223
- describe("ResultsetTable component tests", () => {
224
- test("ResultsetTable rendered correctly", () => {
225
- const { getByText } = render(<DxcResultsetTable columns={columns} rows={rows} itemsPerPage={3}></DxcResultsetTable>);
226
- expect(getByText("Peter")).toBeTruthy();
227
- });
228
- test("Resultsettable shows as many rows as itemsPerPage", () => {
229
- const { getByText, queryByText } = render(
230
- <DxcResultsetTable columns={columns} rows={rows} itemsPerPage={3}></DxcResultsetTable>
231
- );
232
- expect(getByText("Peter")).toBeTruthy();
233
- expect(queryByText("Rick")).toBeFalsy();
234
- });
235
-
236
- test("Resultsettable shows rows on second page", () => {
237
- const { getByText, getAllByRole } = render(
238
- <DxcResultsetTable columns={columns} rows={rows} itemsPerPage={3}></DxcResultsetTable>
239
- );
240
- expect(getByText("Peter")).toBeTruthy();
241
- expect(getByText("Louis")).toBeTruthy();
242
- expect(getByText("Lana")).toBeTruthy();
243
- const nextButton = getAllByRole("button")[2];
244
- fireEvent.click(nextButton);
245
- expect(getByText("4 to 6 of 10")).toBeTruthy();
246
- expect(getByText("Page: 2 of 4")).toBeTruthy();
247
- expect(getByText("Rick")).toBeTruthy();
248
- expect(getByText("Mark")).toBeTruthy();
249
- expect(getByText("Cris")).toBeTruthy();
250
- });
251
-
252
- test("Resultsettable going to the last page shows only one row", () => {
253
- const { getByText, getAllByRole } = render(
254
- <DxcResultsetTable columns={columns} rows={rows} itemsPerPage={3}></DxcResultsetTable>
255
- );
256
- const lastButton = getAllByRole("button")[3];
257
- fireEvent.click(lastButton);
258
- expect(getByText("10 to 10 of 10")).toBeTruthy();
259
- expect(getByText("Page: 4 of 4")).toBeTruthy();
260
- expect(getAllByRole("row")).toHaveLength(2);
261
- expect(getByText("Cosmin")).toBeTruthy();
262
- });
263
-
264
- test("Resultsettable sort rows by column", () => {
265
- const component = render(<DxcResultsetTable columns={columns} rows={rows} itemsPerPage={3}></DxcResultsetTable>);
266
- expect(component.queryByText("Peter")).toBeTruthy();
267
- fireEvent.click(component.queryByText("Name"));
268
- expect(component.queryByText("Tina")).not.toBeTruthy();
269
- expect(component.queryByText("Cosmin")).toBeTruthy();
270
-
271
- fireEvent.click(component.queryByText("Name"));
272
- expect(component.queryByText("Tina")).toBeTruthy();
273
- expect(component.queryByText("Cosmin")).not.toBeTruthy();
274
- });
275
- test("Resultsettable change rows should go to first page", () => {
276
- const {queryByText, rerender} = render(<DxcResultsetTable columns={columns} rows={rows} itemsPerPage={3}></DxcResultsetTable>);
277
- expect(queryByText("Peter")).toBeTruthy();
278
- rerender(<DxcResultsetTable columns={columns} rows={rows2} itemsPerPage={3}></DxcResultsetTable>);
279
- expect(queryByText("1 to 3 of 3")).toBeTruthy();
280
- });
281
-
282
- });