You've already forked matrix-react-sdk
mirror of
https://github.com/matrix-org/matrix-react-sdk.git
synced 2025-08-07 21:23:00 +03:00
@@ -156,7 +156,7 @@ describe("<MatrixChat />", () => {
|
|||||||
realQueryParams: {},
|
realQueryParams: {},
|
||||||
};
|
};
|
||||||
const getComponent = (props: Partial<ComponentProps<typeof MatrixChat>> = {}) =>
|
const getComponent = (props: Partial<ComponentProps<typeof MatrixChat>> = {}) =>
|
||||||
render(<MatrixChat {...defaultProps} {...props} />);
|
render(<MatrixChat {...defaultProps} {...props} />, { legacyRoot: true });
|
||||||
|
|
||||||
// make test results readable
|
// make test results readable
|
||||||
filterConsole(
|
filterConsole(
|
||||||
@@ -1380,7 +1380,6 @@ describe("<MatrixChat />", () => {
|
|||||||
|
|
||||||
it("while we are checking the sync store", async () => {
|
it("while we are checking the sync store", async () => {
|
||||||
const rendered = getComponent({});
|
const rendered = getComponent({});
|
||||||
await flushPromises();
|
|
||||||
expect(rendered.getByTestId("spinner")).toBeInTheDocument();
|
expect(rendered.getByTestId("spinner")).toBeInTheDocument();
|
||||||
|
|
||||||
// now a third session starts
|
// now a third session starts
|
||||||
|
@@ -102,6 +102,7 @@ describe("<ForgotPassword>", () => {
|
|||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
renderResult = render(
|
renderResult = render(
|
||||||
<ForgotPassword serverConfig={serverConfig} onComplete={onComplete} onLoginClick={onLoginClick} />,
|
<ForgotPassword serverConfig={serverConfig} onComplete={onComplete} onLoginClick={onLoginClick} />,
|
||||||
|
{ legacyRoot: true },
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@@ -73,6 +73,7 @@ exports[`LogoutDialog Prompts user to connect backup if there is a backup on the
|
|||||||
</details>
|
</details>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
|
aria-describedby=":rm:"
|
||||||
aria-label="Close dialog"
|
aria-label="Close dialog"
|
||||||
class="mx_AccessibleButton mx_Dialog_cancelButton"
|
class="mx_AccessibleButton mx_Dialog_cancelButton"
|
||||||
role="button"
|
role="button"
|
||||||
@@ -160,6 +161,7 @@ exports[`LogoutDialog Prompts user to set up backup if there is no backup on the
|
|||||||
</details>
|
</details>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
|
aria-describedby=":rs:"
|
||||||
aria-label="Close dialog"
|
aria-label="Close dialog"
|
||||||
class="mx_AccessibleButton mx_Dialog_cancelButton"
|
class="mx_AccessibleButton mx_Dialog_cancelButton"
|
||||||
role="button"
|
role="button"
|
||||||
|
@@ -23,7 +23,9 @@ import SyntaxHighlight from "../../../../src/components/views/elements/SyntaxHig
|
|||||||
|
|
||||||
describe("<SyntaxHighlight />", () => {
|
describe("<SyntaxHighlight />", () => {
|
||||||
it("renders", async () => {
|
it("renders", async () => {
|
||||||
const { container } = render(<SyntaxHighlight>console.log("Hello, World!");</SyntaxHighlight>);
|
const { container } = render(<SyntaxHighlight>console.log("Hello, World!");</SyntaxHighlight>, {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
await waitFor(() => expect(container.querySelector(".language-arcade")).toBeTruthy());
|
await waitFor(() => expect(container.querySelector(".language-arcade")).toBeTruthy());
|
||||||
expect(container).toMatchSnapshot();
|
expect(container).toMatchSnapshot();
|
||||||
});
|
});
|
||||||
@@ -31,7 +33,9 @@ describe("<SyntaxHighlight />", () => {
|
|||||||
it.each(["json", "javascript", "css"])("uses the provided language", async (lang) => {
|
it.each(["json", "javascript", "css"])("uses the provided language", async (lang) => {
|
||||||
const mock = jest.spyOn(hljs, "highlight");
|
const mock = jest.spyOn(hljs, "highlight");
|
||||||
|
|
||||||
const { container } = render(<SyntaxHighlight language={lang}>// Hello, World</SyntaxHighlight>);
|
const { container } = render(<SyntaxHighlight language={lang}>// Hello, World</SyntaxHighlight>, {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
await waitFor(() => expect(container.querySelector(`.language-${lang}`)).toBeTruthy());
|
await waitFor(() => expect(container.querySelector(`.language-${lang}`)).toBeTruthy());
|
||||||
|
|
||||||
const [_lang, opts] = mock.mock.lastCall!;
|
const [_lang, opts] = mock.mock.lastCall!;
|
||||||
|
@@ -70,6 +70,7 @@ describe("<PollHistory />", () => {
|
|||||||
wrapper: ({ children }) => (
|
wrapper: ({ children }) => (
|
||||||
<MatrixClientContext.Provider value={mockClient}>{children}</MatrixClientContext.Provider>
|
<MatrixClientContext.Provider value={mockClient}>{children}</MatrixClientContext.Provider>
|
||||||
),
|
),
|
||||||
|
legacyRoot: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
beforeAll(() => {
|
beforeAll(() => {
|
||||||
|
@@ -206,6 +206,7 @@ describe("<UserInfo />", () => {
|
|||||||
|
|
||||||
return render(<UserInfo {...defaultProps} {...props} />, {
|
return render(<UserInfo {...defaultProps} {...props} />, {
|
||||||
wrapper: Wrapper,
|
wrapper: Wrapper,
|
||||||
|
legacyRoot: true,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -324,6 +325,9 @@ describe("<UserInfo />", () => {
|
|||||||
<MatrixClientContext.Provider value={mockClient}>
|
<MatrixClientContext.Provider value={mockClient}>
|
||||||
<UserInfo {...defaultProps} />
|
<UserInfo {...defaultProps} />
|
||||||
</MatrixClientContext.Provider>,
|
</MatrixClientContext.Provider>,
|
||||||
|
{
|
||||||
|
legacyRoot: true,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
screen.getByRole("button", { name: "Send message" });
|
screen.getByRole("button", { name: "Send message" });
|
||||||
@@ -339,6 +343,9 @@ describe("<UserInfo />", () => {
|
|||||||
<MatrixClientContext.Provider value={mockClient}>
|
<MatrixClientContext.Provider value={mockClient}>
|
||||||
<UserInfo {...defaultProps} />
|
<UserInfo {...defaultProps} />
|
||||||
</MatrixClientContext.Provider>,
|
</MatrixClientContext.Provider>,
|
||||||
|
{
|
||||||
|
legacyRoot: true,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
expect(screen.queryByRole("button", { name: "Message" })).toBeNull();
|
expect(screen.queryByRole("button", { name: "Message" })).toBeNull();
|
||||||
@@ -689,6 +696,7 @@ describe("<UserInfoHeader />", () => {
|
|||||||
|
|
||||||
return render(<UserInfoHeader {...defaultProps} {...props} />, {
|
return render(<UserInfoHeader {...defaultProps} {...props} />, {
|
||||||
wrapper: Wrapper,
|
wrapper: Wrapper,
|
||||||
|
legacyRoot: true,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -728,6 +736,7 @@ describe("<DeviceItem />", () => {
|
|||||||
|
|
||||||
return render(<DeviceItem {...defaultProps} {...props} />, {
|
return render(<DeviceItem {...defaultProps} {...props} />, {
|
||||||
wrapper: Wrapper,
|
wrapper: Wrapper,
|
||||||
|
legacyRoot: true,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -871,6 +880,7 @@ describe("<UserOptionsSection />", () => {
|
|||||||
|
|
||||||
return render(<UserOptionsSection {...defaultProps} {...props} />, {
|
return render(<UserOptionsSection {...defaultProps} {...props} />, {
|
||||||
wrapper: Wrapper,
|
wrapper: Wrapper,
|
||||||
|
legacyRoot: true,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -1097,6 +1107,7 @@ describe("<PowerLevelEditor />", () => {
|
|||||||
|
|
||||||
return render(<PowerLevelEditor {...defaultProps} {...props} />, {
|
return render(<PowerLevelEditor {...defaultProps} {...props} />, {
|
||||||
wrapper: Wrapper,
|
wrapper: Wrapper,
|
||||||
|
legacyRoot: true,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -1156,6 +1167,7 @@ describe("<RoomKickButton />", () => {
|
|||||||
|
|
||||||
return render(<RoomKickButton {...defaultProps} {...props} />, {
|
return render(<RoomKickButton {...defaultProps} {...props} />, {
|
||||||
wrapper: Wrapper,
|
wrapper: Wrapper,
|
||||||
|
legacyRoot: true,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -1263,6 +1275,7 @@ describe("<BanToggleButton />", () => {
|
|||||||
|
|
||||||
return render(<BanToggleButton {...defaultProps} {...props} />, {
|
return render(<BanToggleButton {...defaultProps} {...props} />, {
|
||||||
wrapper: Wrapper,
|
wrapper: Wrapper,
|
||||||
|
legacyRoot: true,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -1395,6 +1408,7 @@ describe("<RoomAdminToolsContainer />", () => {
|
|||||||
|
|
||||||
return render(<RoomAdminToolsContainer {...defaultProps} {...props} />, {
|
return render(<RoomAdminToolsContainer {...defaultProps} {...props} />, {
|
||||||
wrapper: Wrapper,
|
wrapper: Wrapper,
|
||||||
|
legacyRoot: true,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -16,7 +16,15 @@ limitations under the License.
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import React from "react";
|
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 { Room, MatrixClient, RoomState, RoomMember, User, MatrixEvent } from "matrix-js-sdk/src/matrix";
|
||||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||||
import { mocked, MockedObject } from "jest-mock";
|
import { mocked, MockedObject } from "jest-mock";
|
||||||
@@ -374,7 +382,7 @@ describe("MemberList", () => {
|
|||||||
const renderComponent = () => {
|
const renderComponent = () => {
|
||||||
const context = new TestSdkContext();
|
const context = new TestSdkContext();
|
||||||
context.client = client;
|
context.client = client;
|
||||||
render(
|
return render(
|
||||||
<SDKContext.Provider value={context}>
|
<SDKContext.Provider value={context}>
|
||||||
<MemberList
|
<MemberList
|
||||||
searchQuery=""
|
searchQuery=""
|
||||||
@@ -383,6 +391,9 @@ describe("MemberList", () => {
|
|||||||
roomId={room.roomId}
|
roomId={room.roomId}
|
||||||
/>
|
/>
|
||||||
</SDKContext.Provider>,
|
</SDKContext.Provider>,
|
||||||
|
{
|
||||||
|
// legacyRoot: true,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -409,7 +420,10 @@ describe("MemberList", () => {
|
|||||||
await flushPromises();
|
await flushPromises();
|
||||||
|
|
||||||
// button rendered but disabled
|
// 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 () => {
|
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, "getMyMembership").mockReturnValue(KnownMembership.Join);
|
||||||
jest.spyOn(room, "canInvite").mockReturnValue(true);
|
jest.spyOn(room, "canInvite").mockReturnValue(true);
|
||||||
|
|
||||||
renderComponent();
|
const { getByRole, getAllByRole } = renderComponent();
|
||||||
await flushPromises();
|
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({
|
expect(defaultDispatcher.dispatch).toHaveBeenCalledWith({
|
||||||
action: "view_invite",
|
action: "view_invite",
|
||||||
|
@@ -85,6 +85,9 @@ describe("SendWysiwygComposer", () => {
|
|||||||
/>
|
/>
|
||||||
</RoomContext.Provider>
|
</RoomContext.Provider>
|
||||||
</MatrixClientContext.Provider>,
|
</MatrixClientContext.Provider>,
|
||||||
|
{
|
||||||
|
legacyRoot: true,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -118,7 +118,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
test("no homeserver support", async () => {
|
test("no homeserver support", async () => {
|
||||||
// simulate no support
|
// simulate no support
|
||||||
jest.spyOn(MSC3906Rendezvous.prototype, "generateCode").mockRejectedValue("");
|
jest.spyOn(MSC3906Rendezvous.prototype, "generateCode").mockRejectedValue("");
|
||||||
render(getComponent({ client }));
|
render(getComponent({ client }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
await waitFor(() =>
|
await waitFor(() =>
|
||||||
expect(mockedFlow).toHaveBeenLastCalledWith({
|
expect(mockedFlow).toHaveBeenLastCalledWith({
|
||||||
phase: Phase.Error,
|
phase: Phase.Error,
|
||||||
@@ -132,7 +134,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
|
|
||||||
test("failed to connect", async () => {
|
test("failed to connect", async () => {
|
||||||
jest.spyOn(MSC3906Rendezvous.prototype, "startAfterShowingCode").mockRejectedValue("");
|
jest.spyOn(MSC3906Rendezvous.prototype, "startAfterShowingCode").mockRejectedValue("");
|
||||||
render(getComponent({ client }));
|
render(getComponent({ client }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
await waitFor(() =>
|
await waitFor(() =>
|
||||||
expect(mockedFlow).toHaveBeenLastCalledWith({
|
expect(mockedFlow).toHaveBeenLastCalledWith({
|
||||||
phase: Phase.Error,
|
phase: Phase.Error,
|
||||||
@@ -148,7 +152,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
test("render QR then back", async () => {
|
test("render QR then back", async () => {
|
||||||
const onFinished = jest.fn();
|
const onFinished = jest.fn();
|
||||||
jest.spyOn(MSC3906Rendezvous.prototype, "startAfterShowingCode").mockReturnValue(unresolvedPromise());
|
jest.spyOn(MSC3906Rendezvous.prototype, "startAfterShowingCode").mockReturnValue(unresolvedPromise());
|
||||||
render(getComponent({ client, onFinished }));
|
render(getComponent({ client, onFinished }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
||||||
|
|
||||||
await waitFor(() =>
|
await waitFor(() =>
|
||||||
@@ -176,7 +182,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
|
|
||||||
test("render QR then decline", async () => {
|
test("render QR then decline", async () => {
|
||||||
const onFinished = jest.fn();
|
const onFinished = jest.fn();
|
||||||
render(getComponent({ client, onFinished }));
|
render(getComponent({ client, onFinished }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
||||||
|
|
||||||
await waitFor(() =>
|
await waitFor(() =>
|
||||||
@@ -206,7 +214,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
(client as any).crypto = undefined;
|
(client as any).crypto = undefined;
|
||||||
(client as any).getCrypto = () => undefined;
|
(client as any).getCrypto = () => undefined;
|
||||||
const onFinished = jest.fn();
|
const onFinished = jest.fn();
|
||||||
render(getComponent({ client, onFinished }));
|
render(getComponent({ client, onFinished }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
||||||
|
|
||||||
await waitFor(() =>
|
await waitFor(() =>
|
||||||
@@ -246,7 +256,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
jest.spyOn(MSC3906Rendezvous.prototype, "verifyNewDeviceOnExistingDevice").mockImplementation(() =>
|
jest.spyOn(MSC3906Rendezvous.prototype, "verifyNewDeviceOnExistingDevice").mockImplementation(() =>
|
||||||
unresolvedPromise(),
|
unresolvedPromise(),
|
||||||
);
|
);
|
||||||
render(getComponent({ client, onFinished }));
|
render(getComponent({ client, onFinished }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
||||||
|
|
||||||
await waitFor(() =>
|
await waitFor(() =>
|
||||||
@@ -283,7 +295,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
|
|
||||||
test("approve + verify", async () => {
|
test("approve + verify", async () => {
|
||||||
const onFinished = jest.fn();
|
const onFinished = jest.fn();
|
||||||
render(getComponent({ client, onFinished }));
|
render(getComponent({ client, onFinished }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
||||||
|
|
||||||
await waitFor(() =>
|
await waitFor(() =>
|
||||||
@@ -313,7 +327,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
test("approve - rate limited", async () => {
|
test("approve - rate limited", async () => {
|
||||||
mocked(client.requestLoginToken).mockRejectedValue(new HTTPError("rate limit reached", 429));
|
mocked(client.requestLoginToken).mockRejectedValue(new HTTPError("rate limit reached", 429));
|
||||||
const onFinished = jest.fn();
|
const onFinished = jest.fn();
|
||||||
render(getComponent({ client, onFinished }));
|
render(getComponent({ client, onFinished }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
const rendezvous = mocked(MSC3906Rendezvous).mock.instances[0];
|
||||||
|
|
||||||
await waitFor(() =>
|
await waitFor(() =>
|
||||||
@@ -357,7 +373,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
test("render QR then back", async () => {
|
test("render QR then back", async () => {
|
||||||
const onFinished = jest.fn();
|
const onFinished = jest.fn();
|
||||||
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockReturnValue(unresolvedPromise());
|
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockReturnValue(unresolvedPromise());
|
||||||
render(getComponent({ client, onFinished }));
|
render(getComponent({ client, onFinished }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
|
|
||||||
await waitFor(() =>
|
await waitFor(() =>
|
||||||
expect(mockedFlow).toHaveBeenLastCalledWith({
|
expect(mockedFlow).toHaveBeenLastCalledWith({
|
||||||
@@ -378,7 +396,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
test("failed to connect", async () => {
|
test("failed to connect", async () => {
|
||||||
render(getComponent({ client }));
|
render(getComponent({ client }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockResolvedValue({});
|
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockResolvedValue({});
|
||||||
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockRejectedValue(
|
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockRejectedValue(
|
||||||
new HTTPError("Internal Server Error", 500),
|
new HTTPError("Internal Server Error", 500),
|
||||||
@@ -390,7 +410,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
test("reciprocates login", async () => {
|
test("reciprocates login", async () => {
|
||||||
jest.spyOn(global.window, "open");
|
jest.spyOn(global.window, "open");
|
||||||
|
|
||||||
render(getComponent({ client }));
|
render(getComponent({ client }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockResolvedValue({});
|
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockResolvedValue({});
|
||||||
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({
|
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({
|
||||||
verificationUri: "mock-verification-uri",
|
verificationUri: "mock-verification-uri",
|
||||||
@@ -416,7 +438,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
test("handles errors during reciprocation", async () => {
|
test("handles errors during reciprocation", async () => {
|
||||||
render(getComponent({ client }));
|
render(getComponent({ client }), {
|
||||||
|
legacyRoot: true,
|
||||||
|
});
|
||||||
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockResolvedValue({});
|
jest.spyOn(MSC4108SignInWithQR.prototype, "negotiateProtocols").mockResolvedValue({});
|
||||||
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({});
|
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({});
|
||||||
await waitFor(() =>
|
await waitFor(() =>
|
||||||
@@ -443,7 +467,9 @@ describe("<LoginWithQR />", () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
test("handles user cancelling during reciprocation", async () => {
|
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, "negotiateProtocols").mockResolvedValue({});
|
||||||
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({});
|
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({});
|
||||||
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({});
|
jest.spyOn(MSC4108SignInWithQR.prototype, "deviceAuthorizationGrant").mockResolvedValue({});
|
||||||
|
@@ -65,7 +65,7 @@ describe("UnverifiedSessionToast", () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
renderResult = render(<ToastContainer />);
|
renderResult = render(<ToastContainer />, { legacyRoot: true });
|
||||||
});
|
});
|
||||||
|
|
||||||
describe("when rendering the toast", () => {
|
describe("when rendering the toast", () => {
|
||||||
|
Reference in New Issue
Block a user