Fix tests
This commit is contained in:
parent
62017d4f4e
commit
45c7027d3c
@ -68,8 +68,6 @@
|
|||||||
"react-dom": "^18.3.1",
|
"react-dom": "^18.3.1",
|
||||||
"react-hook-form": "^7.54.2",
|
"react-hook-form": "^7.54.2",
|
||||||
"react-is": "^18.3.1",
|
"react-is": "^18.3.1",
|
||||||
"react-router": "^6.28.2",
|
|
||||||
"react-router-dom": "^6.28.2",
|
|
||||||
"ts-jest-mock-import-meta": "^1.2.1"
|
"ts-jest-mock-import-meta": "^1.2.1"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
@ -1,12 +1,32 @@
|
|||||||
import { render, screen } from "@testing-library/react";
|
import { render, screen } from "@testing-library/react";
|
||||||
|
import { BrowserRouter } from "react-router-dom";
|
||||||
import fetchMock from "jest-fetch-mock";
|
import fetchMock from "jest-fetch-mock";
|
||||||
fetchMock.enableMocks();
|
fetchMock.enableMocks();
|
||||||
|
|
||||||
|
jest.mock("./synapse/authProvider", () => ({
|
||||||
|
__esModule: true,
|
||||||
|
default: {
|
||||||
|
logout: jest.fn().mockResolvedValue(undefined),
|
||||||
|
},
|
||||||
|
}));
|
||||||
|
|
||||||
import App from "./App";
|
import App from "./App";
|
||||||
|
|
||||||
describe("App", () => {
|
describe("App", () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
// Reset all mocks before each test
|
||||||
|
fetchMock.resetMocks();
|
||||||
|
// Mock any fetch call to return empty JSON immediately
|
||||||
|
fetchMock.mockResponseOnce(JSON.stringify({}));
|
||||||
|
});
|
||||||
|
|
||||||
it("renders", async () => {
|
it("renders", async () => {
|
||||||
render(<App />);
|
render(
|
||||||
|
<BrowserRouter>
|
||||||
|
<App />
|
||||||
|
</BrowserRouter>
|
||||||
|
);
|
||||||
|
|
||||||
await screen.findAllByText("Welcome to Synapse Admin");
|
await screen.findAllByText("Welcome to Synapse Admin");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -2,6 +2,7 @@ import polyglotI18nProvider from "ra-i18n-polyglot";
|
|||||||
|
|
||||||
import { render, screen } from "@testing-library/react";
|
import { render, screen } from "@testing-library/react";
|
||||||
import { AdminContext } from "react-admin";
|
import { AdminContext } from "react-admin";
|
||||||
|
import { BrowserRouter } from "react-router-dom";
|
||||||
|
|
||||||
import LoginPage from "./LoginPage";
|
import LoginPage from "./LoginPage";
|
||||||
import { AppContext } from "../Context";
|
import { AppContext } from "../Context";
|
||||||
@ -14,9 +15,11 @@ describe("LoginForm", () => {
|
|||||||
it("renders with no restriction to homeserver", async () => {
|
it("renders with no restriction to homeserver", async () => {
|
||||||
await act(async () => {
|
await act(async () => {
|
||||||
render(
|
render(
|
||||||
<AdminContext i18nProvider={i18nProvider}>
|
<BrowserRouter>
|
||||||
<LoginPage />
|
<AdminContext i18nProvider={i18nProvider}>
|
||||||
</AdminContext>
|
<LoginPage />
|
||||||
|
</AdminContext>
|
||||||
|
</BrowserRouter>
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -33,13 +36,15 @@ describe("LoginForm", () => {
|
|||||||
|
|
||||||
it("renders with single restricted homeserver", () => {
|
it("renders with single restricted homeserver", () => {
|
||||||
render(
|
render(
|
||||||
<AppContext.Provider
|
<BrowserRouter>
|
||||||
value={{ restrictBaseUrl: "https://matrix.example.com", asManagedUsers: [], menu: [] }}
|
<AppContext.Provider
|
||||||
>
|
value={{ restrictBaseUrl: "https://matrix.example.com", asManagedUsers: [], menu: [] }}
|
||||||
|
>
|
||||||
<AdminContext i18nProvider={i18nProvider}>
|
<AdminContext i18nProvider={i18nProvider}>
|
||||||
<LoginPage />
|
<LoginPage />
|
||||||
</AdminContext>
|
</AdminContext>
|
||||||
</AppContext.Provider>
|
</AppContext.Provider>
|
||||||
|
</BrowserRouter>
|
||||||
);
|
);
|
||||||
|
|
||||||
screen.getByText(englishMessages.synapseadmin.auth.welcome);
|
screen.getByText(englishMessages.synapseadmin.auth.welcome);
|
||||||
@ -56,14 +61,16 @@ describe("LoginForm", () => {
|
|||||||
it("renders with multiple restricted homeservers", async () => {
|
it("renders with multiple restricted homeservers", async () => {
|
||||||
render(
|
render(
|
||||||
<AppContext.Provider
|
<AppContext.Provider
|
||||||
value={{
|
value={{
|
||||||
restrictBaseUrl: ["https://matrix.example.com", "https://matrix.example.org"],
|
restrictBaseUrl: ["https://matrix.example.com", "https://matrix.example.org"],
|
||||||
asManagedUsers: [],
|
asManagedUsers: [],
|
||||||
menu: [],
|
menu: [],
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<AdminContext i18nProvider={i18nProvider}>
|
<AdminContext i18nProvider={i18nProvider}>
|
||||||
<LoginPage />
|
<BrowserRouter>
|
||||||
|
<LoginPage />
|
||||||
|
</BrowserRouter>
|
||||||
</AdminContext>
|
</AdminContext>
|
||||||
</AppContext.Provider>
|
</AppContext.Provider>
|
||||||
);
|
);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user