@dxc-technology/halstack-react 0.0.0-a45812e → 0.0.0-a4aa1a8

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 (183) 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 +13497 -0
  5. package/dist/index.mjs +13440 -0
  6. package/package.json +76 -57
  7. package/babel.config.js +0 -4
  8. package/dist/ThemeContext.js +0 -15
  9. package/dist/accordion/Accordion.js +0 -264
  10. package/dist/accordion/Accordion.stories.js +0 -207
  11. package/dist/accordion/readme.md +0 -96
  12. package/dist/alert/Alert.js +0 -302
  13. package/dist/alert/Alert.stories.js +0 -158
  14. package/dist/alert/close.svg +0 -4
  15. package/dist/alert/error.svg +0 -4
  16. package/dist/alert/info.svg +0 -4
  17. package/dist/alert/readme.md +0 -43
  18. package/dist/alert/success.svg +0 -4
  19. package/dist/alert/warning.svg +0 -4
  20. package/dist/box/Box.js +0 -136
  21. package/dist/button/Button.js +0 -187
  22. package/dist/button/Button.stories.js +0 -224
  23. package/dist/button/readme.md +0 -93
  24. package/dist/card/Card.js +0 -246
  25. package/dist/checkbox/Checkbox.js +0 -221
  26. package/dist/checkbox/Checkbox.stories.js +0 -144
  27. package/dist/checkbox/readme.md +0 -116
  28. package/dist/common/OpenSans.css +0 -81
  29. package/dist/common/RequiredComponent.js +0 -50
  30. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  31. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  32. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  33. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  34. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  35. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  36. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  37. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  38. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  39. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  40. package/dist/common/services/example-service.js +0 -10
  41. package/dist/common/services/example-service.test.js +0 -12
  42. package/dist/common/utils.js +0 -22
  43. package/dist/common/variables.js +0 -77
  44. package/dist/date/Date.js +0 -345
  45. package/dist/date/Date.stories.js +0 -205
  46. package/dist/date/calendar.svg +0 -1
  47. package/dist/date/calendar_dark.svg +0 -1
  48. package/dist/date/readme.md +0 -73
  49. package/dist/dialog/Dialog.js +0 -164
  50. package/dist/dialog/Dialog.stories.js +0 -217
  51. package/dist/dialog/readme.md +0 -32
  52. package/dist/dropdown/Dropdown.js +0 -412
  53. package/dist/dropdown/Dropdown.stories.js +0 -249
  54. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  55. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  56. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  57. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  58. package/dist/dropdown/readme.md +0 -69
  59. package/dist/footer/Footer.js +0 -341
  60. package/dist/footer/Footer.stories.js +0 -94
  61. package/dist/footer/dxc_logo_wht.png +0 -0
  62. package/dist/footer/readme.md +0 -41
  63. package/dist/header/Header.js +0 -343
  64. package/dist/header/Header.stories.js +0 -176
  65. package/dist/header/close_icon.svg +0 -1
  66. package/dist/header/dxc_logo_black.png +0 -0
  67. package/dist/header/dxc_logo_white.png +0 -0
  68. package/dist/header/hamb_menu_black.svg +0 -1
  69. package/dist/header/hamb_menu_white.svg +0 -1
  70. package/dist/header/readme.md +0 -33
  71. package/dist/heading/Heading.js +0 -159
  72. package/dist/input-text/InputText.js +0 -510
  73. package/dist/input-text/InputText.stories.js +0 -209
  74. package/dist/input-text/error.svg +0 -1
  75. package/dist/input-text/readme.md +0 -91
  76. package/dist/link/Link.js +0 -129
  77. package/dist/link/readme.md +0 -51
  78. package/dist/main.js +0 -263
  79. package/dist/paginator/Paginator.js +0 -178
  80. package/dist/paginator/images/next.svg +0 -3
  81. package/dist/paginator/images/nextPage.svg +0 -3
  82. package/dist/paginator/images/previous.svg +0 -3
  83. package/dist/paginator/images/previousPage.svg +0 -3
  84. package/dist/paginator/readme.md +0 -50
  85. package/dist/progress-bar/ProgressBar.js +0 -189
  86. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  87. package/dist/progress-bar/readme.md +0 -63
  88. package/dist/radio/Radio.js +0 -204
  89. package/dist/radio/Radio.stories.js +0 -166
  90. package/dist/radio/readme.md +0 -70
  91. package/dist/resultsetTable/ResultsetTable.js +0 -334
  92. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  93. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  94. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  95. package/dist/select/Select.js +0 -425
  96. package/dist/select/Select.stories.js +0 -235
  97. package/dist/select/readme.md +0 -72
  98. package/dist/sidenav/Sidenav.js +0 -217
  99. package/dist/sidenav/arrow_icon.svg +0 -3
  100. package/dist/slider/Slider.js +0 -268
  101. package/dist/slider/Slider.stories.js +0 -241
  102. package/dist/slider/readme.md +0 -64
  103. package/dist/spinner/Spinner.js +0 -196
  104. package/dist/spinner/Spinner.stories.js +0 -183
  105. package/dist/spinner/readme.md +0 -65
  106. package/dist/switch/Switch.js +0 -219
  107. package/dist/switch/Switch.stories.js +0 -134
  108. package/dist/switch/readme.md +0 -133
  109. package/dist/table/Table.js +0 -84
  110. package/dist/tabs/Tabs.js +0 -183
  111. package/dist/tabs/Tabs.stories.js +0 -130
  112. package/dist/tabs/readme.md +0 -78
  113. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  114. package/dist/tabs-for-sections/readme.md +0 -78
  115. package/dist/tag/Tag.js +0 -217
  116. package/dist/textarea/Textarea.js +0 -226
  117. package/dist/toggle/Toggle.js +0 -223
  118. package/dist/toggle/Toggle.stories.js +0 -297
  119. package/dist/toggle/readme.md +0 -80
  120. package/dist/upload/Upload.js +0 -200
  121. package/dist/upload/Upload.stories.js +0 -72
  122. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -125
  123. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  124. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  125. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -282
  126. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  127. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  128. package/dist/upload/file-upload/FileToUpload.js +0 -158
  129. package/dist/upload/file-upload/audio-icon.svg +0 -4
  130. package/dist/upload/file-upload/close.svg +0 -4
  131. package/dist/upload/file-upload/file-icon.svg +0 -4
  132. package/dist/upload/file-upload/video-icon.svg +0 -4
  133. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  134. package/dist/upload/readme.md +0 -37
  135. package/dist/upload/transaction/Transaction.js +0 -155
  136. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  137. package/dist/upload/transaction/audio-icon.svg +0 -4
  138. package/dist/upload/transaction/error-icon.svg +0 -4
  139. package/dist/upload/transaction/file-icon-err.svg +0 -4
  140. package/dist/upload/transaction/file-icon.svg +0 -4
  141. package/dist/upload/transaction/image-icon-err.svg +0 -4
  142. package/dist/upload/transaction/image-icon.svg +0 -4
  143. package/dist/upload/transaction/success-icon.svg +0 -4
  144. package/dist/upload/transaction/video-icon-err.svg +0 -4
  145. package/dist/upload/transaction/video-icon.svg +0 -4
  146. package/dist/upload/transactions/Transactions.js +0 -120
  147. package/dist/wizard/Wizard.js +0 -310
  148. package/dist/wizard/invalid_icon.svg +0 -6
  149. package/dist/wizard/valid_icon.svg +0 -6
  150. package/dist/wizard/validation-wrong.svg +0 -6
  151. package/test/Accordion.test.js +0 -33
  152. package/test/Alert.test.js +0 -53
  153. package/test/Box.test.js +0 -10
  154. package/test/Button.test.js +0 -18
  155. package/test/Card.test.js +0 -30
  156. package/test/Checkbox.test.js +0 -45
  157. package/test/Date.test.js +0 -393
  158. package/test/Dialog.test.js +0 -23
  159. package/test/Dropdown.test.js +0 -130
  160. package/test/Footer.test.js +0 -99
  161. package/test/Header.test.js +0 -39
  162. package/test/Heading.test.js +0 -35
  163. package/test/InputText.test.js +0 -236
  164. package/test/Link.test.js +0 -25
  165. package/test/Paginator.test.js +0 -165
  166. package/test/ProgressBar.test.js +0 -35
  167. package/test/Radio.test.js +0 -37
  168. package/test/ResultsetTable.test.js +0 -282
  169. package/test/Select.test.js +0 -191
  170. package/test/Sidenav.test.js +0 -87
  171. package/test/Slider.test.js +0 -65
  172. package/test/Spinner.test.js +0 -27
  173. package/test/Switch.test.js +0 -45
  174. package/test/Table.test.js +0 -36
  175. package/test/Tabs.test.js +0 -88
  176. package/test/TabsForSections.test.js +0 -34
  177. package/test/Tag.test.js +0 -32
  178. package/test/TextArea.test.js +0 -52
  179. package/test/Toggle.test.js +0 -43
  180. package/test/Upload.test.js +0 -60
  181. package/test/Wizard.test.js +0 -130
  182. package/test/mocks/pngMock.js +0 -1
  183. 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';