diff --git a/test/components/structures/MatrixChat-test.tsx b/test/components/structures/MatrixChat-test.tsx
index d2d4178d1f..c76b17dccc 100644
--- a/test/components/structures/MatrixChat-test.tsx
+++ b/test/components/structures/MatrixChat-test.tsx
@@ -156,7 +156,7 @@ describe("", () => {
realQueryParams: {},
};
const getComponent = (props: Partial> = {}) =>
- render();
+ render(, { legacyRoot: true });
// make test results readable
filterConsole(
@@ -1380,7 +1380,6 @@ describe("", () => {
it("while we are checking the sync store", async () => {
const rendered = getComponent({});
- await flushPromises();
expect(rendered.getByTestId("spinner")).toBeInTheDocument();
// now a third session starts
diff --git a/test/components/structures/auth/ForgotPassword-test.tsx b/test/components/structures/auth/ForgotPassword-test.tsx
index b43e6bea6a..bea4b10708 100644
--- a/test/components/structures/auth/ForgotPassword-test.tsx
+++ b/test/components/structures/auth/ForgotPassword-test.tsx
@@ -102,6 +102,7 @@ describe("", () => {
beforeEach(() => {
renderResult = render(
,
+ { legacyRoot: true },
);
});
diff --git a/test/components/views/dialogs/__snapshots__/LogoutDialog-test.tsx.snap b/test/components/views/dialogs/__snapshots__/LogoutDialog-test.tsx.snap
index c5db254cb2..e5a4ec5877 100644
--- a/test/components/views/dialogs/__snapshots__/LogoutDialog-test.tsx.snap
+++ b/test/components/views/dialogs/__snapshots__/LogoutDialog-test.tsx.snap
@@ -73,6 +73,7 @@ exports[`LogoutDialog Prompts user to connect backup if there is a backup on the
", () => {
it("renders", async () => {
- const { container } = render(console.log("Hello, World!"););
+ const { container } = render(console.log("Hello, World!");, {
+ legacyRoot: true,
+ });
await waitFor(() => expect(container.querySelector(".language-arcade")).toBeTruthy());
expect(container).toMatchSnapshot();
});
@@ -31,7 +33,9 @@ describe("", () => {
it.each(["json", "javascript", "css"])("uses the provided language", async (lang) => {
const mock = jest.spyOn(hljs, "highlight");
- const { container } = render(// Hello, World);
+ const { container } = render(// Hello, World, {
+ legacyRoot: true,
+ });
await waitFor(() => expect(container.querySelector(`.language-${lang}`)).toBeTruthy());
const [_lang, opts] = mock.mock.lastCall!;
diff --git a/test/components/views/polls/pollHistory/PollHistory-test.tsx b/test/components/views/polls/pollHistory/PollHistory-test.tsx
index 29c1b5d7cf..8a06e48eec 100644
--- a/test/components/views/polls/pollHistory/PollHistory-test.tsx
+++ b/test/components/views/polls/pollHistory/PollHistory-test.tsx
@@ -70,6 +70,7 @@ describe("", () => {
wrapper: ({ children }) => (
{children}
),
+ legacyRoot: true,
});
beforeAll(() => {
diff --git a/test/components/views/right_panel/UserInfo-test.tsx b/test/components/views/right_panel/UserInfo-test.tsx
index 1e14038ba7..3d1b542435 100644
--- a/test/components/views/right_panel/UserInfo-test.tsx
+++ b/test/components/views/right_panel/UserInfo-test.tsx
@@ -206,6 +206,7 @@ describe("", () => {
return render(, {
wrapper: Wrapper,
+ legacyRoot: true,
});
};
@@ -324,6 +325,9 @@ describe("", () => {
,
+ {
+ legacyRoot: true,
+ },
);
screen.getByRole("button", { name: "Send message" });
@@ -339,6 +343,9 @@ describe("", () => {
,
+ {
+ legacyRoot: true,
+ },
);
expect(screen.queryByRole("button", { name: "Message" })).toBeNull();
@@ -689,6 +696,7 @@ describe("", () => {
return render(, {
wrapper: Wrapper,
+ legacyRoot: true,
});
};
@@ -728,6 +736,7 @@ describe("", () => {
return render(, {
wrapper: Wrapper,
+ legacyRoot: true,
});
};
@@ -871,6 +880,7 @@ describe("", () => {
return render(, {
wrapper: Wrapper,
+ legacyRoot: true,
});
};
@@ -1097,6 +1107,7 @@ describe("", () => {
return render(, {
wrapper: Wrapper,
+ legacyRoot: true,
});
};
@@ -1156,6 +1167,7 @@ describe("", () => {
return render(, {
wrapper: Wrapper,
+ legacyRoot: true,
});
};
@@ -1263,6 +1275,7 @@ describe("", () => {
return render(, {
wrapper: Wrapper,
+ legacyRoot: true,
});
};
@@ -1395,6 +1408,7 @@ describe("", () => {
return render(, {
wrapper: Wrapper,
+ legacyRoot: true,
});
};
diff --git a/test/components/views/rooms/MemberList-test.tsx b/test/components/views/rooms/MemberList-test.tsx
index 2476cc108c..06edd79f00 100644
--- a/test/components/views/rooms/MemberList-test.tsx
+++ b/test/components/views/rooms/MemberList-test.tsx
@@ -16,7 +16,15 @@ limitations under the License.
*/
import React from "react";
-import { act, fireEvent, render, RenderResult, screen } from "@testing-library/react";
+import {
+ act,
+ fireEvent,
+ render,
+ RenderResult,
+ screen,
+ waitFor,
+ waitForElementToBeRemoved,
+} from "@testing-library/react";
import { Room, MatrixClient, RoomState, RoomMember, User, MatrixEvent } from "matrix-js-sdk/src/matrix";
import { KnownMembership } from "matrix-js-sdk/src/types";
import { mocked, MockedObject } from "jest-mock";
@@ -374,7 +382,7 @@ describe("MemberList", () => {
const renderComponent = () => {
const context = new TestSdkContext();
context.client = client;
- render(
+ return render(
{
roomId={room.roomId}
/>
,
+ {
+ // legacyRoot: true,
+ },
);
};
@@ -409,7 +420,10 @@ describe("MemberList", () => {
await flushPromises();
// button rendered but disabled
- expect(screen.getByText("Invite to this room")).toHaveAttribute("aria-disabled", "true");
+ expect(screen.getByRole("button", { name: "Invite to this room" })).toHaveAttribute(
+ "aria-disabled",
+ "true",
+ );
});
it("renders enabled invite button when current user is a member and has rights to invite", async () => {
@@ -427,10 +441,17 @@ describe("MemberList", () => {
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Join);
jest.spyOn(room, "canInvite").mockReturnValue(true);
- renderComponent();
- await flushPromises();
+ const { getByRole, getAllByRole } = renderComponent();
+ await waitForElementToBeRemoved(() => screen.queryAllByRole("progressbar"));
- fireEvent.click(screen.getByText("Invite to this room"));
+ await waitFor(() =>
+ expect(getAllByRole("button", { name: "Invite to this room" })).not.toHaveAttribute(
+ "aria-disabled",
+ "true",
+ ),
+ );
+
+ fireEvent.click(getByRole("button", { name: "Invite to this room" }));
expect(defaultDispatcher.dispatch).toHaveBeenCalledWith({
action: "view_invite",
diff --git a/test/components/views/rooms/wysiwyg_composer/SendWysiwygComposer-test.tsx b/test/components/views/rooms/wysiwyg_composer/SendWysiwygComposer-test.tsx
index 0420a12217..a9ddf367e3 100644
--- a/test/components/views/rooms/wysiwyg_composer/SendWysiwygComposer-test.tsx
+++ b/test/components/views/rooms/wysiwyg_composer/SendWysiwygComposer-test.tsx
@@ -85,6 +85,9 @@ describe("SendWysiwygComposer", () => {
/>
,
+ {
+ legacyRoot: true,
+ },
);
};
diff --git a/test/components/views/settings/devices/LoginWithQR-test.tsx b/test/components/views/settings/devices/LoginWithQR-test.tsx
index 6e7636d0cf..7084dd0923 100644
--- a/test/components/views/settings/devices/LoginWithQR-test.tsx
+++ b/test/components/views/settings/devices/LoginWithQR-test.tsx
@@ -118,7 +118,9 @@ describe("", () => {
test("no homeserver support", async () => {
// simulate no support
jest.spyOn(MSC3906Rendezvous.prototype, "generateCode").mockRejectedValue("");
- render(getComponent({ client }));
+ render(getComponent({ client }), {
+ legacyRoot: true,
+ });
await waitFor(() =>
expect(mockedFlow).toHaveBeenLastCalledWith({
phase: Phase.Error,
@@ -132,7 +134,9 @@ describe("", () => {
test("failed to connect", async () => {
jest.spyOn(MSC3906Rendezvous.prototype, "startAfterShowingCode").mockRejectedValue("");
- render(getComponent({ client }));
+ render(getComponent({ client }), {
+ legacyRoot: true,
+ });
await waitFor(() =>
expect(mockedFlow).toHaveBeenLastCalledWith({
phase: Phase.Error,
@@ -148,7 +152,9 @@ describe("", () => {
test("render QR then back", async () => {
const onFinished = jest.fn();
jest.spyOn(MSC3906Rendezvous.prototype, "startAfterShowingCode").mockReturnValue(unresolvedPromise());
- render(getComponent({ client, onFinished }));
+ render(getComponent({ client, onFinished }), {
+ legacyRoot: true,
+ });
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
await waitFor(() =>
@@ -176,7 +182,9 @@ describe("", () => {
test("render QR then decline", async () => {
const onFinished = jest.fn();
- render(getComponent({ client, onFinished }));
+ render(getComponent({ client, onFinished }), {
+ legacyRoot: true,
+ });
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
await waitFor(() =>
@@ -206,7 +214,9 @@ describe("", () => {
(client as any).crypto = undefined;
(client as any).getCrypto = () => undefined;
const onFinished = jest.fn();
- render(getComponent({ client, onFinished }));
+ render(getComponent({ client, onFinished }), {
+ legacyRoot: true,
+ });
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
await waitFor(() =>
@@ -246,7 +256,9 @@ describe("", () => {
jest.spyOn(MSC3906Rendezvous.prototype, "verifyNewDeviceOnExistingDevice").mockImplementation(() =>
unresolvedPromise(),
);
- render(getComponent({ client, onFinished }));
+ render(getComponent({ client, onFinished }), {
+ legacyRoot: true,
+ });
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
await waitFor(() =>
@@ -283,7 +295,9 @@ describe("", () => {
test("approve + verify", async () => {
const onFinished = jest.fn();
- render(getComponent({ client, onFinished }));
+ render(getComponent({ client, onFinished }), {
+ legacyRoot: true,
+ });
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
await waitFor(() =>
@@ -313,7 +327,9 @@ describe("", () => {
test("approve - rate limited", async () => {
mocked(client.requestLoginToken).mockRejectedValue(new HTTPError("rate limit reached", 429));
const onFinished = jest.fn();
- render(getComponent({ client, onFinished }));
+ render(getComponent({ client, onFinished }), {
+ legacyRoot: true,
+ });
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
await waitFor(() =>
@@ -357,7 +373,9 @@ describe("", () => {
test("render QR then back", async () => {
const onFinished = jest.fn();
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockReturnValue(unresolvedPromise());
- render(getComponent({ client, onFinished }));
+ render(getComponent({ client, onFinished }), {
+ legacyRoot: true,
+ });
await waitFor(() =>
expect(mockedFlow).toHaveBeenLastCalledWith({
@@ -378,7 +396,9 @@ describe("", () => {
});
test("failed to connect", async () => {
- render(getComponent({ client }));
+ render(getComponent({ client }), {
+ legacyRoot: true,
+ });
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockResolvedValue({});
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockRejectedValue(
new HTTPError("Internal Server Error", 500),
@@ -390,7 +410,9 @@ describe("", () => {
test("reciprocates login", async () => {
jest.spyOn(global.window, "open");
- render(getComponent({ client }));
+ render(getComponent({ client }), {
+ legacyRoot: true,
+ });
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockResolvedValue({});
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({
verificationUri: "mock-verification-uri",
@@ -416,7 +438,9 @@ describe("", () => {
});
test("handles errors during reciprocation", async () => {
- render(getComponent({ client }));
+ render(getComponent({ client }), {
+ legacyRoot: true,
+ });
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockResolvedValue({});
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({});
await waitFor(() =>
@@ -443,7 +467,9 @@ describe("", () => {
});
test("handles user cancelling during reciprocation", async () => {
- render(getComponent({ client }));
+ render(getComponent({ client }), {
+ legacyRoot: true,
+ });
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockResolvedValue({});
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({});
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({});
diff --git a/test/toasts/UnverifiedSessionToast-test.tsx b/test/toasts/UnverifiedSessionToast-test.tsx
index 1c282f9693..9419715d07 100644
--- a/test/toasts/UnverifiedSessionToast-test.tsx
+++ b/test/toasts/UnverifiedSessionToast-test.tsx
@@ -65,7 +65,7 @@ describe("UnverifiedSessionToast", () => {
});
beforeEach(() => {
- renderResult = render();
+ renderResult = render(, { legacyRoot: true });
});
describe("when rendering the toast", () => {