Skip to content

Commit 346922a

Browse files
committed
Extracting navigateTo
1 parent 3ef627f commit 346922a

File tree

2 files changed

+20
-17
lines changed

2 files changed

+20
-17
lines changed

tests/Router.test.tsx

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,18 @@
1-
import { render, screen } from "@testing-library/react";
2-
import { createMemoryRouter, RouterProvider } from "react-router-dom";
3-
import routes from "../src/routes";
1+
import { screen } from "@testing-library/react";
2+
import { navigateTo } from "./utils";
43

54
describe("Router", () => {
65
it("should render the home page for /", () => {
7-
const router = createMemoryRouter(routes, {
8-
initialEntries: ["/"],
9-
});
6+
navigateTo("/");
107

11-
render(<RouterProvider router={router}></RouterProvider>);
12-
13-
expect(screen.getByRole('heading', {name : /home/i})).toBeInTheDocument();
8+
expect(screen.getByRole("heading", { name: /home/i })).toBeInTheDocument();
149
});
15-
16-
it("should render the products page for /products", () => {
17-
const router = createMemoryRouter(routes, {
18-
initialEntries: ["/products"],
19-
});
2010

21-
render(<RouterProvider router={router}></RouterProvider>);
11+
it("should render the products page for /products", () => {
12+
navigateTo("/products");
2213

23-
expect(screen.getByRole('heading', {name : /products/i})).toBeInTheDocument();
14+
expect(
15+
screen.getByRole("heading", { name: /products/i })
16+
).toBeInTheDocument();
2417
});
25-
2618
});

tests/utils.ts renamed to tests/utils.tsx

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
import { useAuth0, User } from "@auth0/auth0-react";
2+
import { render } from "@testing-library/react";
23
import { delay, http, HttpResponse } from "msw";
4+
import { createMemoryRouter, RouterProvider } from "react-router-dom";
5+
import routes from "../src/routes";
36
import { server } from "./mocks/server";
47

58
export const simulateDelay = (endpoint: string) => {
@@ -33,3 +36,11 @@ export const mockAuthState = (authState: AuthState) => {
3336
handleRedirectCallback: vi.fn(),
3437
});
3538
};
39+
40+
export const navigateTo = (path: string) => {
41+
const router = createMemoryRouter(routes, {
42+
initialEntries: [path],
43+
});
44+
45+
render(<RouterProvider router={router}></RouterProvider>);
46+
};

0 commit comments

Comments
 (0)