Skip to content

Commit 1d054e1

Browse files
committed
Fix test case errors
1 parent db9fe24 commit 1d054e1

File tree

1 file changed

+20
-14
lines changed

1 file changed

+20
-14
lines changed
Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,57 @@
1-
import { fireEvent, render, screen } from "@testing-library/react";
1+
import { fireEvent, render, screen, waitFor } from "@testing-library/react";
22
import "@testing-library/jest-dom";
33
import QuestionCategoryAutoComplete from ".";
44

5+
jest.mock("../../utils/api", () => ({
6+
questionClient: {
7+
get: jest.fn().mockResolvedValue({ data: { categories: ["DFS"] } }),
8+
},
9+
}));
10+
511
describe("Question Category Auto Complete", () => {
612
const selectedCategories: string[] = ["DFS"];
713
const setSelectedCategories = jest.fn();
814

9-
it("Question Category Auto Complete is rendered", () => {
15+
it("Question Category Auto Complete is rendered", async () => {
1016
render(
1117
<QuestionCategoryAutoComplete
1218
selectedCategories={selectedCategories}
1319
setSelectedCategories={setSelectedCategories}
14-
/>,
20+
/>
1521
);
1622

17-
const category = screen.getByText("DFS");
23+
const category = await screen.findByText("DFS");
1824

1925
expect(category).toBeInTheDocument();
2026
});
2127

22-
it("Adding a new category from the category list", () => {
28+
it("Adding a new category from the category list", async () => {
2329
render(
2430
<QuestionCategoryAutoComplete
2531
selectedCategories={selectedCategories}
2632
setSelectedCategories={setSelectedCategories}
27-
/>,
33+
/>
2834
);
2935

3036
const input = screen.getByLabelText("Category");
3137
fireEvent.change(input, { target: { value: "DFS" } });
3238

33-
expect(screen.getByText("DFS")).toBeInTheDocument();
39+
await waitFor(() => expect(screen.getByText("DFS")).toBeInTheDocument());
3440
});
3541

36-
it("Adding a new category not from the category list", () => {
42+
it("Adding a new category not from the category list", async () => {
3743
const { rerender } = render(
3844
<QuestionCategoryAutoComplete
3945
selectedCategories={selectedCategories}
4046
setSelectedCategories={setSelectedCategories}
41-
/>,
47+
/>
4248
);
4349

4450
const input = screen.getByLabelText("Category");
4551
fireEvent.change(input, { target: { value: "New Category" } });
4652

4753
const valueAdded = 'Add: "New Category"';
48-
expect(screen.getByText(valueAdded)).toBeInTheDocument();
54+
expect(await screen.findByText(valueAdded)).toBeInTheDocument();
4955

5056
fireEvent.click(screen.getByText(valueAdded));
5157

@@ -55,23 +61,23 @@ describe("Question Category Auto Complete", () => {
5561
<QuestionCategoryAutoComplete
5662
selectedCategories={updatedCategories}
5763
setSelectedCategories={setSelectedCategories}
58-
/>,
64+
/>
5965
);
6066

6167
expect(screen.getByText("New Category")).toBeInTheDocument();
6268
});
6369

64-
it("Remove a category from selected categories", () => {
70+
it("Remove a category from selected categories", async () => {
6571
render(
6672
<QuestionCategoryAutoComplete
6773
selectedCategories={selectedCategories}
6874
setSelectedCategories={setSelectedCategories}
69-
/>,
75+
/>
7076
);
7177

7278
const deleteButton = screen.getByTestId("CancelIcon");
7379
fireEvent.click(deleteButton);
7480

75-
expect(setSelectedCategories).toHaveBeenCalledWith([]);
81+
await waitFor(() => expect(setSelectedCategories).toHaveBeenCalledWith([]));
7682
});
7783
});

0 commit comments

Comments
 (0)