@dxc-technology/halstack-react 0.0.0-ee10f17 → 0.0.0-efa7c74

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 (379) 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/common/utils.js +22 -0
  58. package/common/variables.js +1577 -0
  59. package/{dist/date → date}/Date.js +121 -90
  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} +143 -43
  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 +39 -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 +249 -0
  143. package/resultsetTable/types.d.ts +63 -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/README.md +0 -66
  217. package/babel.config.js +0 -4
  218. package/dist/accordion/Accordion.js +0 -264
  219. package/dist/accordion/Accordion.stories.js +0 -207
  220. package/dist/accordion/readme.md +0 -96
  221. package/dist/alert/Alert.js +0 -302
  222. package/dist/alert/Alert.stories.js +0 -158
  223. package/dist/alert/close.svg +0 -4
  224. package/dist/alert/error.svg +0 -4
  225. package/dist/alert/info.svg +0 -4
  226. package/dist/alert/readme.md +0 -43
  227. package/dist/alert/success.svg +0 -4
  228. package/dist/alert/warning.svg +0 -4
  229. package/dist/box/Box.js +0 -136
  230. package/dist/button/Button.js +0 -182
  231. package/dist/button/Button.stories.js +0 -224
  232. package/dist/button/readme.md +0 -93
  233. package/dist/card/Card.js +0 -246
  234. package/dist/checkbox/Checkbox.js +0 -224
  235. package/dist/checkbox/Checkbox.stories.js +0 -144
  236. package/dist/checkbox/readme.md +0 -116
  237. package/dist/chip/Chip.js +0 -170
  238. package/dist/common/RequiredComponent.js +0 -50
  239. package/dist/common/services/example-service.js +0 -10
  240. package/dist/common/services/example-service.test.js +0 -12
  241. package/dist/common/utils.js +0 -42
  242. package/dist/common/variables.js +0 -154
  243. package/dist/date/Date.stories.js +0 -205
  244. package/dist/date/calendar.svg +0 -1
  245. package/dist/date/calendar_dark.svg +0 -1
  246. package/dist/date/readme.md +0 -73
  247. package/dist/dialog/Dialog.js +0 -193
  248. package/dist/dialog/Dialog.stories.js +0 -217
  249. package/dist/dialog/readme.md +0 -32
  250. package/dist/dropdown/Dropdown.js +0 -412
  251. package/dist/dropdown/Dropdown.stories.js +0 -249
  252. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  253. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  254. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  255. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  256. package/dist/dropdown/readme.md +0 -69
  257. package/dist/footer/Footer.js +0 -341
  258. package/dist/footer/Footer.stories.js +0 -94
  259. package/dist/footer/dxc_logo_wht.png +0 -0
  260. package/dist/footer/readme.md +0 -41
  261. package/dist/header/Header.js +0 -343
  262. package/dist/header/Header.stories.js +0 -176
  263. package/dist/header/close_icon.svg +0 -1
  264. package/dist/header/dxc_logo_black.png +0 -0
  265. package/dist/header/dxc_logo_white.png +0 -0
  266. package/dist/header/hamb_menu_black.svg +0 -1
  267. package/dist/header/hamb_menu_white.svg +0 -1
  268. package/dist/header/readme.md +0 -33
  269. package/dist/heading/Heading.js +0 -159
  270. package/dist/input-text/InputText.js +0 -517
  271. package/dist/input-text/InputText.stories.js +0 -209
  272. package/dist/input-text/error.svg +0 -1
  273. package/dist/input-text/readme.md +0 -91
  274. package/dist/link/Link.js +0 -129
  275. package/dist/link/readme.md +0 -51
  276. package/dist/paginator/Paginator.js +0 -178
  277. package/dist/paginator/images/next.svg +0 -3
  278. package/dist/paginator/images/nextPage.svg +0 -3
  279. package/dist/paginator/images/previous.svg +0 -3
  280. package/dist/paginator/images/previousPage.svg +0 -3
  281. package/dist/paginator/readme.md +0 -50
  282. package/dist/progress-bar/ProgressBar.js +0 -189
  283. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  284. package/dist/progress-bar/readme.md +0 -63
  285. package/dist/radio/Radio.js +0 -191
  286. package/dist/radio/Radio.stories.js +0 -166
  287. package/dist/radio/readme.md +0 -70
  288. package/dist/resultsetTable/ResultsetTable.js +0 -334
  289. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  290. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  291. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  292. package/dist/select/Select.js +0 -425
  293. package/dist/select/Select.stories.js +0 -235
  294. package/dist/select/readme.md +0 -72
  295. package/dist/sidenav/Sidenav.js +0 -217
  296. package/dist/sidenav/arrow_icon.svg +0 -3
  297. package/dist/slider/Slider.js +0 -258
  298. package/dist/slider/Slider.stories.js +0 -241
  299. package/dist/slider/readme.md +0 -64
  300. package/dist/spinner/Spinner.js +0 -196
  301. package/dist/spinner/Spinner.stories.js +0 -183
  302. package/dist/spinner/readme.md +0 -65
  303. package/dist/switch/Switch.js +0 -219
  304. package/dist/switch/Switch.stories.js +0 -134
  305. package/dist/switch/readme.md +0 -133
  306. package/dist/table/Table.js +0 -84
  307. package/dist/tabs/Tabs.js +0 -183
  308. package/dist/tabs/Tabs.stories.js +0 -130
  309. package/dist/tabs/readme.md +0 -78
  310. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  311. package/dist/tabs-for-sections/readme.md +0 -78
  312. package/dist/tag/Tag.js +0 -217
  313. package/dist/textarea/Textarea.js +0 -226
  314. package/dist/toggle/Toggle.stories.js +0 -297
  315. package/dist/toggle/readme.md +0 -80
  316. package/dist/upload/Upload.stories.js +0 -72
  317. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -125
  318. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  319. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  320. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -282
  321. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  322. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  323. package/dist/upload/file-upload/FileToUpload.js +0 -158
  324. package/dist/upload/file-upload/audio-icon.svg +0 -4
  325. package/dist/upload/file-upload/close.svg +0 -4
  326. package/dist/upload/file-upload/file-icon.svg +0 -4
  327. package/dist/upload/file-upload/video-icon.svg +0 -4
  328. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  329. package/dist/upload/readme.md +0 -37
  330. package/dist/upload/transaction/Transaction.js +0 -155
  331. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  332. package/dist/upload/transaction/audio-icon.svg +0 -4
  333. package/dist/upload/transaction/error-icon.svg +0 -4
  334. package/dist/upload/transaction/file-icon-err.svg +0 -4
  335. package/dist/upload/transaction/file-icon.svg +0 -4
  336. package/dist/upload/transaction/image-icon-err.svg +0 -4
  337. package/dist/upload/transaction/image-icon.svg +0 -4
  338. package/dist/upload/transaction/success-icon.svg +0 -4
  339. package/dist/upload/transaction/video-icon-err.svg +0 -4
  340. package/dist/upload/transaction/video-icon.svg +0 -4
  341. package/dist/upload/transactions/Transactions.js +0 -120
  342. package/dist/wizard/Wizard.js +0 -310
  343. package/dist/wizard/invalid_icon.svg +0 -6
  344. package/dist/wizard/valid_icon.svg +0 -6
  345. package/dist/wizard/validation-wrong.svg +0 -6
  346. package/test/Accordion.test.js +0 -33
  347. package/test/Alert.test.js +0 -53
  348. package/test/Box.test.js +0 -10
  349. package/test/Button.test.js +0 -18
  350. package/test/Card.test.js +0 -30
  351. package/test/Checkbox.test.js +0 -45
  352. package/test/Chip.test.js +0 -25
  353. package/test/Date.test.js +0 -393
  354. package/test/Dialog.test.js +0 -23
  355. package/test/Dropdown.test.js +0 -130
  356. package/test/Footer.test.js +0 -99
  357. package/test/Header.test.js +0 -39
  358. package/test/Heading.test.js +0 -35
  359. package/test/InputText.test.js +0 -236
  360. package/test/Link.test.js +0 -25
  361. package/test/Paginator.test.js +0 -165
  362. package/test/ProgressBar.test.js +0 -35
  363. package/test/Radio.test.js +0 -37
  364. package/test/ResultsetTable.test.js +0 -282
  365. package/test/Select.test.js +0 -191
  366. package/test/Sidenav.test.js +0 -87
  367. package/test/Slider.test.js +0 -65
  368. package/test/Spinner.test.js +0 -27
  369. package/test/Switch.test.js +0 -45
  370. package/test/Table.test.js +0 -36
  371. package/test/Tabs.test.js +0 -88
  372. package/test/TabsForSections.test.js +0 -34
  373. package/test/Tag.test.js +0 -32
  374. package/test/TextArea.test.js +0 -52
  375. package/test/Toggle.test.js +0 -43
  376. package/test/Upload.test.js +0 -60
  377. package/test/Wizard.test.js +0 -130
  378. package/test/mocks/pngMock.js +0 -1
  379. 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
- });