@dxc-technology/halstack-react 0.0.0-3a8852f → 0.0.0-3b779a7

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 (186) hide show
  1. package/README.md +46 -0
  2. package/dist/index.d.mts +6500 -0
  3. package/dist/index.d.ts +6500 -0
  4. package/dist/index.js +13521 -0
  5. package/dist/index.mjs +13464 -0
  6. package/package.json +76 -57
  7. package/babel.config.js +0 -4
  8. package/dist/README.md +0 -66
  9. package/dist/ThemeContext.js +0 -15
  10. package/dist/accordion/Accordion.js +0 -264
  11. package/dist/accordion/Accordion.stories.js +0 -207
  12. package/dist/accordion/readme.md +0 -96
  13. package/dist/alert/Alert.js +0 -302
  14. package/dist/alert/Alert.stories.js +0 -158
  15. package/dist/alert/close.svg +0 -4
  16. package/dist/alert/error.svg +0 -4
  17. package/dist/alert/info.svg +0 -4
  18. package/dist/alert/readme.md +0 -43
  19. package/dist/alert/success.svg +0 -4
  20. package/dist/alert/warning.svg +0 -4
  21. package/dist/box/Box.js +0 -136
  22. package/dist/button/Button.js +0 -187
  23. package/dist/button/Button.stories.js +0 -224
  24. package/dist/button/readme.md +0 -93
  25. package/dist/card/Card.js +0 -246
  26. package/dist/checkbox/Checkbox.js +0 -221
  27. package/dist/checkbox/Checkbox.stories.js +0 -144
  28. package/dist/checkbox/readme.md +0 -116
  29. package/dist/chip/Chip.js +0 -170
  30. package/dist/common/OpenSans.css +0 -81
  31. package/dist/common/RequiredComponent.js +0 -50
  32. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  33. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  34. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  35. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  36. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  37. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  38. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  39. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  40. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  41. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  42. package/dist/common/services/example-service.js +0 -10
  43. package/dist/common/services/example-service.test.js +0 -12
  44. package/dist/common/utils.js +0 -22
  45. package/dist/common/variables.js +0 -77
  46. package/dist/date/Date.js +0 -342
  47. package/dist/date/Date.stories.js +0 -205
  48. package/dist/date/calendar.svg +0 -1
  49. package/dist/date/calendar_dark.svg +0 -1
  50. package/dist/date/readme.md +0 -73
  51. package/dist/dialog/Dialog.js +0 -164
  52. package/dist/dialog/Dialog.stories.js +0 -217
  53. package/dist/dialog/readme.md +0 -32
  54. package/dist/dropdown/Dropdown.js +0 -412
  55. package/dist/dropdown/Dropdown.stories.js +0 -249
  56. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  57. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  58. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  59. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  60. package/dist/dropdown/readme.md +0 -69
  61. package/dist/footer/Footer.js +0 -341
  62. package/dist/footer/Footer.stories.js +0 -94
  63. package/dist/footer/dxc_logo_wht.png +0 -0
  64. package/dist/footer/readme.md +0 -41
  65. package/dist/header/Header.js +0 -343
  66. package/dist/header/Header.stories.js +0 -176
  67. package/dist/header/close_icon.svg +0 -1
  68. package/dist/header/dxc_logo_black.png +0 -0
  69. package/dist/header/dxc_logo_white.png +0 -0
  70. package/dist/header/hamb_menu_black.svg +0 -1
  71. package/dist/header/hamb_menu_white.svg +0 -1
  72. package/dist/header/readme.md +0 -33
  73. package/dist/heading/Heading.js +0 -159
  74. package/dist/input-text/InputText.js +0 -510
  75. package/dist/input-text/InputText.stories.js +0 -209
  76. package/dist/input-text/error.svg +0 -1
  77. package/dist/input-text/readme.md +0 -91
  78. package/dist/link/Link.js +0 -129
  79. package/dist/link/readme.md +0 -51
  80. package/dist/main.js +0 -263
  81. package/dist/paginator/Paginator.js +0 -178
  82. package/dist/paginator/images/next.svg +0 -3
  83. package/dist/paginator/images/nextPage.svg +0 -3
  84. package/dist/paginator/images/previous.svg +0 -3
  85. package/dist/paginator/images/previousPage.svg +0 -3
  86. package/dist/paginator/readme.md +0 -50
  87. package/dist/progress-bar/ProgressBar.js +0 -189
  88. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  89. package/dist/progress-bar/readme.md +0 -63
  90. package/dist/radio/Radio.js +0 -204
  91. package/dist/radio/Radio.stories.js +0 -166
  92. package/dist/radio/readme.md +0 -70
  93. package/dist/resultsetTable/ResultsetTable.js +0 -334
  94. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  95. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  96. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  97. package/dist/select/Select.js +0 -425
  98. package/dist/select/Select.stories.js +0 -235
  99. package/dist/select/readme.md +0 -72
  100. package/dist/sidenav/Sidenav.js +0 -217
  101. package/dist/sidenav/arrow_icon.svg +0 -3
  102. package/dist/slider/Slider.js +0 -268
  103. package/dist/slider/Slider.stories.js +0 -241
  104. package/dist/slider/readme.md +0 -64
  105. package/dist/spinner/Spinner.js +0 -196
  106. package/dist/spinner/Spinner.stories.js +0 -183
  107. package/dist/spinner/readme.md +0 -65
  108. package/dist/switch/Switch.js +0 -219
  109. package/dist/switch/Switch.stories.js +0 -134
  110. package/dist/switch/readme.md +0 -133
  111. package/dist/table/Table.js +0 -84
  112. package/dist/tabs/Tabs.js +0 -183
  113. package/dist/tabs/Tabs.stories.js +0 -130
  114. package/dist/tabs/readme.md +0 -78
  115. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  116. package/dist/tabs-for-sections/readme.md +0 -78
  117. package/dist/tag/Tag.js +0 -217
  118. package/dist/textarea/Textarea.js +0 -226
  119. package/dist/toggle/Toggle.js +0 -223
  120. package/dist/toggle/Toggle.stories.js +0 -297
  121. package/dist/toggle/readme.md +0 -80
  122. package/dist/upload/Upload.js +0 -200
  123. package/dist/upload/Upload.stories.js +0 -72
  124. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -125
  125. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  126. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  127. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -282
  128. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  129. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  130. package/dist/upload/file-upload/FileToUpload.js +0 -158
  131. package/dist/upload/file-upload/audio-icon.svg +0 -4
  132. package/dist/upload/file-upload/close.svg +0 -4
  133. package/dist/upload/file-upload/file-icon.svg +0 -4
  134. package/dist/upload/file-upload/video-icon.svg +0 -4
  135. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  136. package/dist/upload/readme.md +0 -37
  137. package/dist/upload/transaction/Transaction.js +0 -155
  138. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  139. package/dist/upload/transaction/audio-icon.svg +0 -4
  140. package/dist/upload/transaction/error-icon.svg +0 -4
  141. package/dist/upload/transaction/file-icon-err.svg +0 -4
  142. package/dist/upload/transaction/file-icon.svg +0 -4
  143. package/dist/upload/transaction/image-icon-err.svg +0 -4
  144. package/dist/upload/transaction/image-icon.svg +0 -4
  145. package/dist/upload/transaction/success-icon.svg +0 -4
  146. package/dist/upload/transaction/video-icon-err.svg +0 -4
  147. package/dist/upload/transaction/video-icon.svg +0 -4
  148. package/dist/upload/transactions/Transactions.js +0 -120
  149. package/dist/wizard/Wizard.js +0 -310
  150. package/dist/wizard/invalid_icon.svg +0 -6
  151. package/dist/wizard/valid_icon.svg +0 -6
  152. package/dist/wizard/validation-wrong.svg +0 -6
  153. package/test/Accordion.test.js +0 -33
  154. package/test/Alert.test.js +0 -53
  155. package/test/Box.test.js +0 -10
  156. package/test/Button.test.js +0 -18
  157. package/test/Card.test.js +0 -30
  158. package/test/Checkbox.test.js +0 -45
  159. package/test/Chip.test.js +0 -25
  160. package/test/Date.test.js +0 -393
  161. package/test/Dialog.test.js +0 -23
  162. package/test/Dropdown.test.js +0 -130
  163. package/test/Footer.test.js +0 -99
  164. package/test/Header.test.js +0 -39
  165. package/test/Heading.test.js +0 -35
  166. package/test/InputText.test.js +0 -236
  167. package/test/Link.test.js +0 -25
  168. package/test/Paginator.test.js +0 -165
  169. package/test/ProgressBar.test.js +0 -35
  170. package/test/Radio.test.js +0 -37
  171. package/test/ResultsetTable.test.js +0 -282
  172. package/test/Select.test.js +0 -191
  173. package/test/Sidenav.test.js +0 -87
  174. package/test/Slider.test.js +0 -65
  175. package/test/Spinner.test.js +0 -27
  176. package/test/Switch.test.js +0 -45
  177. package/test/Table.test.js +0 -36
  178. package/test/Tabs.test.js +0 -88
  179. package/test/TabsForSections.test.js +0 -34
  180. package/test/Tag.test.js +0 -32
  181. package/test/TextArea.test.js +0 -52
  182. package/test/Toggle.test.js +0 -43
  183. package/test/Upload.test.js +0 -60
  184. package/test/Wizard.test.js +0 -130
  185. package/test/mocks/pngMock.js +0 -1
  186. package/test/mocks/svgMock.js +0 -1
@@ -1,36 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcTable from "../src/table/Table";
4
-
5
- describe("Table component tests", () => {
6
- test("Table renders with correct content", () => {
7
- const { getByText } = render(
8
- <DxcTable>
9
- <tr>
10
- <th>header-1</th>
11
- <th>header-2</th>
12
- <th>header-3</th>
13
- </tr>
14
- <tr>
15
- <td>cell-1</td>
16
- <td>cell-2</td>
17
- <td>cell-3</td>
18
- </tr>
19
- <tr>
20
- <td>cell-4</td>
21
- <td>cell-5</td>
22
- <td>cell-6</td>
23
- </tr>
24
- </DxcTable>
25
- );
26
- expect(getByText("header-1")).toBeTruthy();
27
- expect(getByText("header-2")).toBeTruthy();
28
- expect(getByText("header-3")).toBeTruthy();
29
- expect(getByText("cell-1")).toBeTruthy();
30
- expect(getByText("cell-2")).toBeTruthy();
31
- expect(getByText("cell-3")).toBeTruthy();
32
- expect(getByText("cell-4")).toBeTruthy();
33
- expect(getByText("cell-5")).toBeTruthy();
34
- expect(getByText("cell-6")).toBeTruthy();
35
- });
36
- });
package/test/Tabs.test.js DELETED
@@ -1,88 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcTabs from "../src/tabs/Tabs";
4
-
5
- const sampleTabs = [
6
- {
7
- label: "Tab-1",
8
- },
9
- {
10
- label: "Tab-2",
11
- },
12
- {
13
- label: "Tab-3",
14
- },
15
- ];
16
-
17
- describe("Tabs component tests", () => {
18
- test("Tabs render with correct labels", () => {
19
- const { getByText } = render(<DxcTabs tabs={sampleTabs}></DxcTabs>);
20
- expect(getByText("Tab-1")).toBeTruthy();
21
- expect(getByText("Tab-2")).toBeTruthy();
22
- expect(getByText("Tab-3")).toBeTruthy();
23
- });
24
-
25
- test("Tabs render with correct icons", () => {
26
- const { getAllByRole } = render(
27
- <DxcTabs
28
- tabs={[
29
- {
30
- label: "Tab-1",
31
- iconSrc: "/testIcon1.png",
32
- },
33
- {
34
- label: "Tab-2",
35
- iconSrc: "/testIcon2.png",
36
- },
37
- {
38
- label: "Tab-3",
39
- iconSrc: "/testIcon3.png",
40
- },
41
- ]}
42
- ></DxcTabs>
43
- );
44
- expect(getAllByRole("img")[0].getAttribute("src")).toBe("/testIcon1.png");
45
- expect(getAllByRole("img")[1].getAttribute("src")).toBe("/testIcon2.png");
46
- expect(getAllByRole("img")[2].getAttribute("src")).toBe("/testIcon3.png");
47
- });
48
-
49
- test("Tabs render with disabled tab", () => {
50
- const { getAllByRole } = render(
51
- <DxcTabs
52
- tabs={[
53
- {
54
- label: "Tab-1",
55
- isDisabled: true,
56
- },
57
- {
58
- label: "Tab-2",
59
- },
60
- ]}
61
- ></DxcTabs>
62
- );
63
- expect(getAllByRole("tab")[0].hasAttribute("disabled")).toBeTruthy();
64
- expect(getAllByRole("tab")[1].hasAttribute("disabled")).toBeFalsy();
65
- });
66
-
67
- test("Uncontrolled tabs", () => {
68
- const onTabClick = jest.fn();
69
- const { getByText } = render(<DxcTabs tabs={sampleTabs} onTabClick={onTabClick}></DxcTabs>);
70
- const tab1 = getByText("Tab-1");
71
- const tab2 = getByText("Tab-2");
72
- fireEvent.click(tab2);
73
- expect(onTabClick).toHaveBeenCalledWith(1);
74
- fireEvent.click(tab1);
75
- expect(onTabClick).toHaveBeenCalledWith(0);
76
- });
77
-
78
- test("Controlled tabs", () => {
79
- const onTabClick = jest.fn();
80
- const { getByText } = render(<DxcTabs tabs={sampleTabs} onTabClick={onTabClick} activeTabIndex={0}></DxcTabs>);
81
- const tab2 = getByText("Tab-2");
82
- const tab3 = getByText("Tab-3");
83
- fireEvent.click(tab2);
84
- expect(onTabClick).toHaveBeenCalledWith(1);
85
- fireEvent.click(tab3);
86
- expect(onTabClick).toHaveBeenCalledWith(2);
87
- });
88
- });
@@ -1,34 +0,0 @@
1
- import React from "react";
2
- import { render } from "@testing-library/react";
3
- import DxcTabsForSections from "../src/tabs-for-sections/TabsForSections";
4
-
5
- const sections = [
6
- {
7
- tabLabel: "S1",
8
- section: () => <div>test-section-1</div>,
9
- },
10
- {
11
- tabLabel: "S2",
12
- section: () => <div>test-section-2</div>,
13
- },
14
- {
15
- tabLabel: "S3",
16
- section: () => <div>test-section-3</div>,
17
- },
18
- ];
19
-
20
- describe("TabsForSections component tests", () => {
21
- test("TabsForSections renders with correct sections label", () => {
22
- const { getByText } = render(<DxcTabsForSections sections={sections}></DxcTabsForSections>);
23
- expect(getByText("S1")).toBeTruthy();
24
- expect(getByText("S2")).toBeTruthy();
25
- expect(getByText("S3")).toBeTruthy();
26
- });
27
-
28
- test("TabsForSections renders with correct sections content", () => {
29
- const { getByText } = render(<DxcTabsForSections sections={sections}></DxcTabsForSections>);
30
- expect(getByText("test-section-1")).toBeTruthy();
31
- expect(getByText("test-section-2")).toBeTruthy();
32
- expect(getByText("test-section-3")).toBeTruthy();
33
- });
34
- });
package/test/Tag.test.js DELETED
@@ -1,32 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcTag from "../src/tag/Tag";
4
-
5
- describe("Tag component tests", () => {
6
- test("Tag renders with correct label", () => {
7
- const { getByText } = render(<DxcTag label="tag-test"></DxcTag>);
8
- expect(getByText("tag-test")).toBeTruthy();
9
- });
10
-
11
- test("Tag renders with correct label before", () => {
12
- const { getByText } = render(<DxcTag label="tag-test" labelPosition="before"></DxcTag>);
13
- expect(getByText("tag-test")).toBeTruthy();
14
- });
15
-
16
- test("Tag renders with correct icon", () => {
17
- const { getByRole } = render(<DxcTag label="tag-test" iconSrc="/test-icon.jpg"></DxcTag>);
18
- expect(getByRole("img").getAttribute("src")).toBe("/test-icon.jpg");
19
- });
20
-
21
- test("Tag renders with link href", () => {
22
- const { getByRole } = render(<DxcTag label="tag-test" linkHref="/test/page"></DxcTag>);
23
- expect(getByRole("link").getAttribute("href")).toBe("/test/page");
24
- });
25
-
26
- test("Call correct function on click", () => {
27
- const onClick = jest.fn();
28
- const { getByText } = render(<DxcTag label="tag-test" onClick={onClick}></DxcTag>);
29
- fireEvent.click(getByText("tag-test"));
30
- expect(onClick).toHaveBeenCalled();
31
- });
32
- });
@@ -1,52 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcTextarea from "../src/textarea/Textarea";
4
-
5
- describe("TextArea component tests", () => {
6
- test("TextArea renders with correct text", () => {
7
- const { getByText } = render(<DxcTextarea label="TextArea label" />);
8
- expect(getByText("TextArea label")).toBeTruthy();
9
- });
10
-
11
- test("onChange function is called correctly", () => {
12
- const onChange = jest.fn();
13
-
14
- const { getByRole } = render(<DxcTextarea label="TextArea label" onChange={onChange} />);
15
- const input = getByRole("textbox");
16
- fireEvent.change(input, { target: { value: "Testing..." } });
17
- expect(onChange).toHaveBeenCalled();
18
- expect(onChange).toHaveBeenCalledWith("Testing...");
19
- });
20
-
21
- test("onBlur function is called correctly", () => {
22
- const onBlur = jest.fn();
23
-
24
- const { getByRole } = render(<DxcTextarea label="TextArea label" onBlur={onBlur} />);
25
- const input = getByRole("textbox");
26
- fireEvent.change(input, { target: { value: "Testing..." } });
27
- fireEvent.blur(input);
28
- expect(onBlur).toHaveBeenCalled();
29
- expect(onBlur).toHaveBeenCalledWith("Testing...");
30
- });
31
-
32
- test("Controlled component", () => {
33
- const onChange = jest.fn();
34
- const { getByRole } = render(<DxcTextarea label="TextArea label" value="TextArea Value" onChange={onChange} />);
35
- const input = getByRole("textbox");
36
- fireEvent.change(input, { target: { value: "Tests" } });
37
- expect(onChange).toHaveBeenCalled();
38
- expect(onChange).toHaveBeenCalledWith("Tests");
39
- expect(input.value).toBe("TextArea Value");
40
- });
41
-
42
- test("Uncontrolled component", () => {
43
- const onChange = jest.fn();
44
- const { getByRole } = render(<DxcTextarea label="TextArea label" onChange={onChange} />);
45
- const input = getByRole("textbox");
46
- fireEvent.change(input, { target: { value: "Tests" } });
47
- expect(onChange).toHaveBeenCalled();
48
- expect(onChange).toHaveBeenCalledWith("Tests");
49
- expect(input.value).toBe("Tests");
50
- });
51
-
52
- });
@@ -1,43 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcToggle from "../src/toggle/Toggle";
4
-
5
- describe("Toggle component tests", () => {
6
- test("Toggle renders with correct text", () => {
7
- const { getByText } = render(<DxcToggle label="Toggle" />);
8
- expect(getByText("Toggle")).toBeTruthy();
9
- });
10
-
11
- test("Calls correct function on click", () => {
12
- const onClick = jest.fn();
13
- const { getByText} = render(<DxcToggle label="ToggleTest" onClick={onClick} />);
14
- fireEvent.click(getByText("ToggleTest"));
15
- expect(onClick).toHaveBeenCalled();
16
- });
17
-
18
- test("Calls correct function on click with the correct value.", () => {
19
- const onClick = jest.fn();
20
- const { getByText, rerender } = render(<DxcToggle label="ToggleTest" onClick={onClick} />);
21
-
22
- fireEvent.click(getByText("ToggleTest"));
23
- rerender(<DxcToggle label="ToggleTest" onClick={onClick} selected={true} />);
24
- fireEvent.click(getByText("ToggleTest"));
25
- expect(onClick.mock.calls[0][0]).toBe(true);
26
- expect(onClick.mock.calls[1][0]).toBe(false);
27
- });
28
-
29
-
30
- test("Calls correct function on click with the correct value, if it´s controlled and the user doesn´t change the value the function always receives the same", () => {
31
- const onClick = jest.fn();
32
- const { getByText } = render(<DxcToggle label="ToggleTest" selected={true} onClick={onClick} />);
33
-
34
- fireEvent.click(getByText("ToggleTest"));
35
- fireEvent.click(getByText("ToggleTest"));
36
- fireEvent.click(getByText("ToggleTest"));
37
- expect(onClick).toHaveBeenCalledTimes(3);
38
- expect(onClick.mock.calls[0][0]).toBe(false);
39
- expect(onClick.mock.calls[1][0]).toBe(false);
40
- expect(onClick.mock.calls[2][0]).toBe(false);
41
- });
42
-
43
- });
@@ -1,60 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent, act, createEvent } from "@testing-library/react";
3
- import DxcUpload from "../src/upload/Upload";
4
-
5
- describe("Upload component tests", () => {
6
- test("Upload renders with correct text", () => {
7
- const { getByText } = render(<DxcUpload margin="small"></DxcUpload>);
8
- expect(getByText("There are no files to upload")).toBeTruthy();
9
- expect(getByText("Drag and drop your files here or choose one from your computer")).toBeTruthy();
10
- expect(getByText("CHOOSE FILES")).toBeTruthy();
11
- });
12
-
13
- test("Upload shows file information", () => {
14
- const myfunction = jest.fn();
15
- const { getByText } = render(<DxcUpload margin="small"></DxcUpload>);
16
-
17
- const dropZone = getByText("There are no files to upload");
18
- const dropEvent = createEvent.drop(dropZone);
19
- const fileList = [new File(["(⌐□_□)"], "test.png", { type: "image/png" })];
20
-
21
- Object.defineProperty(dropEvent, "dataTransfer", {
22
- value: {
23
- files: fileList,
24
- clearData: myfunction,
25
- },
26
- });
27
-
28
- act(() => {
29
- fireEvent(dropZone, dropEvent);
30
- });
31
- expect(getByText("test.png")).toBeTruthy();
32
- expect(getByText("image/png")).toBeTruthy();
33
- expect(getByText("UPLOAD")).toBeTruthy();
34
- });
35
-
36
- test("Calls correct function callbackUpload", () => {
37
- const onCallbackUpload = jest.fn(() => new Promise(resolve => setTimeout(resolve, 1000)));
38
- const myfunction = jest.fn();
39
- const { getByText } = render(<DxcUpload margin="small" callbackUpload={onCallbackUpload}></DxcUpload>);
40
-
41
- const dropZone = getByText("There are no files to upload");
42
- const dropEvent = createEvent.drop(dropZone);
43
- const fileList = [new File(["(⌐□_□)"], "test.png", { type: "image/png" })];
44
-
45
- Object.defineProperty(dropEvent, "dataTransfer", {
46
- value: {
47
- files: fileList,
48
- clearData: myfunction,
49
- },
50
- });
51
-
52
- act(() => {
53
- fireEvent(dropZone, dropEvent);
54
- });
55
- act(() => {
56
- fireEvent.click(getByText("UPLOAD"));
57
- });
58
- expect(onCallbackUpload).toHaveBeenCalled();
59
- });
60
- });
@@ -1,130 +0,0 @@
1
- import React from "react";
2
- import { render, fireEvent } from "@testing-library/react";
3
- import DxcWizard from "../src/wizard/Wizard";
4
-
5
- describe("Wizard components tests", () => {
6
- test("Wizard renders with correct steps", () => {
7
- const { getByText } = render(
8
- <DxcWizard
9
- steps={[
10
- {
11
- label: "first-step",
12
- },
13
- {
14
- label: "second-step",
15
- },
16
- ]}
17
- ></DxcWizard>
18
- );
19
-
20
- expect(getByText("first-step")).toBeTruthy();
21
- expect(getByText("second-step")).toBeTruthy();
22
- });
23
-
24
- test("Click on step text", () => {
25
- const onClick = jest.fn();
26
- const { getByText } = render(
27
- <DxcWizard
28
- onStepClick={onClick}
29
- steps={[
30
- {
31
- label: "first-step",
32
- },
33
- ]}
34
- ></DxcWizard>
35
- );
36
-
37
- const step = getByText("first-step");
38
- fireEvent.click(step);
39
- expect(onClick).toHaveBeenCalled();
40
- });
41
-
42
- test("Click on step description", () => {
43
- const onClick = jest.fn();
44
- const { getByText } = render(
45
- <DxcWizard
46
- onStepClick={onClick}
47
- steps={[
48
- {
49
- label: "first-step",
50
- description: "step-description",
51
- },
52
- ]}
53
- ></DxcWizard>
54
- );
55
-
56
- const step = getByText("step-description");
57
- fireEvent.click(step);
58
- expect(onClick).toHaveBeenCalled();
59
- });
60
-
61
- test("Click on step number", () => {
62
- const onClick = jest.fn();
63
- const { getByText } = render(
64
- <DxcWizard
65
- onStepClick={onClick}
66
- steps={[
67
- {
68
- label: "first-step",
69
- },
70
- ]}
71
- ></DxcWizard>
72
- );
73
-
74
- const step = getByText("1");
75
- fireEvent.click(step);
76
- expect(onClick).toHaveBeenCalled();
77
- });
78
-
79
- test("Click on disable step", () => {
80
- const onClick = jest.fn();
81
- const { getByText } = render(
82
- <DxcWizard
83
- onStepClick={onClick}
84
- steps={[
85
- {
86
- label: "first-step",
87
- },
88
- {
89
- label: "second-step",
90
- disabled: true,
91
- },
92
- ]}
93
- ></DxcWizard>
94
- );
95
-
96
- const step = getByText("second-step");
97
- fireEvent.click(step);
98
- expect(onClick).toHaveBeenCalledTimes(0);
99
- });
100
-
101
- test("Controlled wizard function is called", () => {
102
- const onClick = jest.fn((i) => i);
103
- const { getByText } = render(
104
- <DxcWizard
105
- currentStep={1}
106
- onStepClick={onClick}
107
- steps={[
108
- {
109
- label: "first-step",
110
- },
111
- {
112
- label: "second-step",
113
- },
114
- ]}
115
- ></DxcWizard>
116
- );
117
-
118
- const step1 = getByText("first-step");
119
- const step2 = getByText("second-step");
120
- fireEvent.click(step1);
121
- fireEvent.click(step2);
122
- fireEvent.click(step1);
123
-
124
- expect(onClick).toHaveBeenCalledTimes(3);
125
- //Test the received value in the onClick function
126
- expect(onClick).toHaveBeenNthCalledWith(1, 0);
127
- expect(onClick).toHaveBeenNthCalledWith(2, 1);
128
- expect(onClick).toHaveBeenNthCalledWith(3, 0);
129
- });
130
- });
@@ -1 +0,0 @@
1
- module.exports = 'ImageMock';
@@ -1 +0,0 @@
1
- module.exports = 'IconMock';