Merge pull request #12336 from matrix-org/andybalaam/stas-demydiuk-membership-type3
Introduce Membership type (take 2)
This commit is contained in:
commit
8f22550f19
113 changed files with 711 additions and 517 deletions
|
@ -18,6 +18,7 @@ limitations under the License.
|
|||
import React from "react";
|
||||
import { EventEmitter } from "events";
|
||||
import { MatrixEvent, Room, RoomMember, Thread, ReceiptType } from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import { render } from "@testing-library/react";
|
||||
import { TooltipProvider } from "@vector-im/compound-web";
|
||||
|
||||
|
@ -171,8 +172,8 @@ describe("MessagePanel", function () {
|
|||
user: "@user:id",
|
||||
target: bobMember,
|
||||
ts: ts0 + i * 1000,
|
||||
mship: "join",
|
||||
prevMship: "join",
|
||||
mship: KnownMembership.Join,
|
||||
prevMship: KnownMembership.Join,
|
||||
name: "A user",
|
||||
}),
|
||||
);
|
||||
|
@ -205,8 +206,8 @@ describe("MessagePanel", function () {
|
|||
user: "@user:id",
|
||||
target: bobMember,
|
||||
ts: ts0 + i * 1000,
|
||||
mship: "join",
|
||||
prevMship: "join",
|
||||
mship: KnownMembership.Join,
|
||||
prevMship: KnownMembership.Join,
|
||||
name: "A user",
|
||||
}),
|
||||
);
|
||||
|
@ -245,7 +246,7 @@ describe("MessagePanel", function () {
|
|||
user: alice,
|
||||
target: aliceMember,
|
||||
ts: ts0 + 1,
|
||||
mship: "join",
|
||||
mship: KnownMembership.Join,
|
||||
name: "Alice",
|
||||
}),
|
||||
mkEvent({
|
||||
|
@ -285,7 +286,7 @@ describe("MessagePanel", function () {
|
|||
skey: "@bob:example.org",
|
||||
target: bobMember,
|
||||
ts: ts0 + 5,
|
||||
mship: "invite",
|
||||
mship: KnownMembership.Invite,
|
||||
name: "Bob",
|
||||
}),
|
||||
];
|
||||
|
@ -542,8 +543,8 @@ describe("MessagePanel", function () {
|
|||
user: "@user:id",
|
||||
target: bobMember,
|
||||
ts: Date.now(),
|
||||
mship: "join",
|
||||
prevMship: "join",
|
||||
mship: KnownMembership.Join,
|
||||
prevMship: KnownMembership.Join,
|
||||
name: "A user",
|
||||
}),
|
||||
];
|
||||
|
@ -571,8 +572,8 @@ describe("MessagePanel", function () {
|
|||
user: "@user:id",
|
||||
target: bobMember,
|
||||
ts: Date.now(),
|
||||
mship: "join",
|
||||
prevMship: "join",
|
||||
mship: KnownMembership.Join,
|
||||
prevMship: KnownMembership.Join,
|
||||
name: "A user",
|
||||
}),
|
||||
...events,
|
||||
|
@ -695,8 +696,8 @@ describe("MessagePanel", function () {
|
|||
for (let i = 0; i < 100; i++) {
|
||||
events.push(
|
||||
TestUtilsMatrix.mkMembership({
|
||||
mship: "join",
|
||||
prevMship: "join",
|
||||
mship: KnownMembership.Join,
|
||||
prevMship: KnownMembership.Join,
|
||||
room: "!room:id",
|
||||
user: "@user:id",
|
||||
event: true,
|
||||
|
@ -716,8 +717,8 @@ describe("MessagePanel", function () {
|
|||
for (let i = 0; i < 100; i++) {
|
||||
events.push(
|
||||
TestUtilsMatrix.mkMembership({
|
||||
mship: "join",
|
||||
prevMship: "join",
|
||||
mship: KnownMembership.Join,
|
||||
prevMship: KnownMembership.Join,
|
||||
room: "!room:id",
|
||||
user: "@user:id",
|
||||
event: true,
|
||||
|
|
|
@ -29,6 +29,7 @@ import {
|
|||
SearchResult,
|
||||
IEvent,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import { MEGOLM_ALGORITHM } from "matrix-js-sdk/src/crypto/olmlib";
|
||||
import { fireEvent, render, screen, RenderResult, waitForElementToBeRemoved, waitFor } from "@testing-library/react";
|
||||
import userEvent from "@testing-library/user-event";
|
||||
|
@ -238,7 +239,7 @@ describe("RoomView", () => {
|
|||
});
|
||||
|
||||
it("updates url preview visibility on encryption state change", async () => {
|
||||
room.getMyMembership = jest.fn().mockReturnValue("join");
|
||||
room.getMyMembership = jest.fn().mockReturnValue(KnownMembership.Join);
|
||||
// we should be starting unencrypted
|
||||
expect(cli.isCryptoEnabled()).toEqual(false);
|
||||
expect(cli.isRoomEncrypted(room.roomId)).toEqual(false);
|
||||
|
@ -583,7 +584,7 @@ describe("RoomView", () => {
|
|||
it("allows to cancel a join request", async () => {
|
||||
jest.spyOn(MatrixClientPeg, "safeGet").mockReturnValue(client);
|
||||
jest.spyOn(client, "leave").mockResolvedValue({});
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue("knock");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Knock);
|
||||
|
||||
await mountRoomView();
|
||||
fireEvent.click(screen.getByRole("button", { name: "Cancel request" }));
|
||||
|
@ -594,7 +595,7 @@ describe("RoomView", () => {
|
|||
});
|
||||
|
||||
it("should close search results when edit is clicked", async () => {
|
||||
room.getMyMembership = jest.fn().mockReturnValue("join");
|
||||
room.getMyMembership = jest.fn().mockReturnValue(KnownMembership.Join);
|
||||
|
||||
const eventMapper = (obj: Partial<IEvent>) => new MatrixEvent(obj);
|
||||
|
||||
|
@ -655,7 +656,7 @@ describe("RoomView", () => {
|
|||
const room2 = new Room(`!${roomCount++}:example.org`, cli, "@alice:example.org");
|
||||
rooms.set(room2.roomId, room2);
|
||||
|
||||
room.getMyMembership = jest.fn().mockReturnValue("join");
|
||||
room.getMyMembership = jest.fn().mockReturnValue(KnownMembership.Join);
|
||||
|
||||
const eventMapper = (obj: Partial<IEvent>) => new MatrixEvent(obj);
|
||||
|
||||
|
|
|
@ -18,6 +18,7 @@ import React from "react";
|
|||
import { mocked } from "jest-mock";
|
||||
import { fireEvent, render, screen, waitFor, waitForElementToBeRemoved } from "@testing-library/react";
|
||||
import { MatrixClient, Room, HierarchyRoom } from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import { RoomHierarchy } from "matrix-js-sdk/src/room-hierarchy";
|
||||
import { TooltipProvider } from "@vector-im/compound-web";
|
||||
|
||||
|
@ -181,7 +182,7 @@ describe("SpaceHierarchy", () => {
|
|||
mocked(client.getRoom).mockImplementation(
|
||||
(roomId) => client.getRooms().find((room) => room.roomId === roomId) ?? null,
|
||||
);
|
||||
[room1, room2, space1, room3].forEach((r) => mocked(r.getMyMembership).mockReturnValue("leave"));
|
||||
[room1, room2, space1, room3].forEach((r) => mocked(r.getMyMembership).mockReturnValue(KnownMembership.Leave));
|
||||
|
||||
const hierarchyRoot: HierarchyRoom = {
|
||||
room_id: root.roomId,
|
||||
|
|
|
@ -35,6 +35,7 @@ import {
|
|||
ThreadEvent,
|
||||
ThreadFilterType,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import React, { createRef } from "react";
|
||||
import { Mocked, mocked } from "jest-mock";
|
||||
import { forEachRight } from "lodash";
|
||||
|
@ -988,8 +989,8 @@ describe("TimelinePanel", () => {
|
|||
events.forEach((event) => timelineSet.getLiveTimeline().addEvent(event, { toStartOfTimeline: true }));
|
||||
|
||||
const roomMembership = mkMembership({
|
||||
mship: "join",
|
||||
prevMship: "join",
|
||||
mship: KnownMembership.Join,
|
||||
prevMship: KnownMembership.Join,
|
||||
user: authorId,
|
||||
room: room.roomId,
|
||||
event: true,
|
||||
|
@ -999,7 +1000,7 @@ describe("TimelinePanel", () => {
|
|||
events.push(roomMembership);
|
||||
|
||||
const member = new RoomMember(room.roomId, authorId);
|
||||
member.membership = "join";
|
||||
member.membership = KnownMembership.Join;
|
||||
|
||||
const roomState = new RoomState(room.roomId);
|
||||
jest.spyOn(roomState, "getMember").mockReturnValue(member);
|
||||
|
|
|
@ -20,6 +20,7 @@ import { render, screen } from "@testing-library/react";
|
|||
import React, { ComponentProps } from "react";
|
||||
import { mocked } from "jest-mock";
|
||||
import { MatrixClient, PendingEventOrdering, Room } from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
|
||||
import MatrixClientContext from "../../../../src/contexts/MatrixClientContext";
|
||||
import RoomContextMenu from "../../../../src/components/views/context_menus/RoomContextMenu";
|
||||
|
@ -106,7 +107,7 @@ describe("RoomContextMenu", () => {
|
|||
it("should render notification option for joined rooms", () => {
|
||||
const chamber = EchoChamber.forRoom(room);
|
||||
chamber.notificationVolume = RoomNotifState.Mute;
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue("join");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Join);
|
||||
renderComponent();
|
||||
|
||||
expect(
|
||||
|
|
|
@ -17,6 +17,7 @@ limitations under the License.
|
|||
import { fireEvent, getByLabelText, render, screen } from "@testing-library/react";
|
||||
import { mocked } from "jest-mock";
|
||||
import { ReceiptType, MatrixClient, PendingEventOrdering, Room } from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import React from "react";
|
||||
import userEvent from "@testing-library/user-event";
|
||||
|
||||
|
@ -105,7 +106,7 @@ describe("RoomGeneralContextMenu", () => {
|
|||
});
|
||||
|
||||
it("does not render invite menu item when UIComponent customisations disable room invite", () => {
|
||||
room.updateMyMembership("join");
|
||||
room.updateMyMembership(KnownMembership.Join);
|
||||
jest.spyOn(room, "canInvite").mockReturnValue(true);
|
||||
mocked(shouldShowComponent).mockReturnValue(false);
|
||||
|
||||
|
@ -116,7 +117,7 @@ describe("RoomGeneralContextMenu", () => {
|
|||
});
|
||||
|
||||
it("renders invite menu item when UIComponent customisations enables room invite", () => {
|
||||
room.updateMyMembership("join");
|
||||
room.updateMyMembership(KnownMembership.Join);
|
||||
jest.spyOn(room, "canInvite").mockReturnValue(true);
|
||||
mocked(shouldShowComponent).mockReturnValue(true);
|
||||
|
||||
|
|
|
@ -16,6 +16,7 @@ limitations under the License.
|
|||
|
||||
import React from "react";
|
||||
import { render } from "@testing-library/react";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
|
||||
import ConfirmUserActionDialog from "../../../../src/components/views/dialogs/ConfirmUserActionDialog";
|
||||
import { mkRoomMember } from "../../../test-utils";
|
||||
|
@ -25,7 +26,7 @@ describe("ConfirmUserActionDialog", () => {
|
|||
const { asFragment } = render(
|
||||
<ConfirmUserActionDialog
|
||||
onFinished={jest.fn()}
|
||||
member={mkRoomMember("123", "@user:test.com", "join")}
|
||||
member={mkRoomMember("123", "@user:test.com", KnownMembership.Join)}
|
||||
action="Ban"
|
||||
title="Ban this " // eg. 'Ban this user?'
|
||||
/>,
|
||||
|
|
|
@ -18,6 +18,7 @@ import React from "react";
|
|||
import { fireEvent, render, screen } from "@testing-library/react";
|
||||
import userEvent from "@testing-library/user-event";
|
||||
import { RoomType, MatrixClient, MatrixError, Room } from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import { sleep } from "matrix-js-sdk/src/utils";
|
||||
import { mocked, Mocked } from "jest-mock";
|
||||
|
||||
|
@ -163,7 +164,7 @@ describe("InviteDialog", () => {
|
|||
mkMembership({
|
||||
event: true,
|
||||
room: roomId,
|
||||
mship: "join",
|
||||
mship: KnownMembership.Join,
|
||||
user: aliceId,
|
||||
skey: aliceId,
|
||||
}),
|
||||
|
|
|
@ -25,6 +25,7 @@ import {
|
|||
Room,
|
||||
RoomMember,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import sanitizeHtml from "sanitize-html";
|
||||
import { fireEvent, render, screen } from "@testing-library/react";
|
||||
|
||||
|
@ -158,9 +159,9 @@ describe("Spotlight Dialog", () => {
|
|||
beforeEach(() => {
|
||||
mockedClient = mockClient({ rooms: [testPublicRoom], users: [testPerson] });
|
||||
testRoom = mkRoom(mockedClient, "!test23:example.com");
|
||||
mocked(testRoom.getMyMembership).mockReturnValue("join");
|
||||
mocked(testRoom.getMyMembership).mockReturnValue(KnownMembership.Join);
|
||||
testLocalRoom = new LocalRoom(LOCAL_ROOM_ID_PREFIX + "test23", mockedClient, mockedClient.getUserId()!);
|
||||
testLocalRoom.updateMyMembership("join");
|
||||
testLocalRoom.updateMyMembership(KnownMembership.Join);
|
||||
mocked(mockedClient.getVisibleRooms).mockReturnValue([testRoom, testLocalRoom]);
|
||||
|
||||
jest.spyOn(DMRoomMap, "shared").mockReturnValue({
|
||||
|
@ -169,7 +170,7 @@ describe("Spotlight Dialog", () => {
|
|||
|
||||
testDM = mkRoom(mockedClient, testDMRoomId);
|
||||
testDM.name = "Chat with Alice";
|
||||
mocked(testDM.getMyMembership).mockReturnValue("join");
|
||||
mocked(testDM.getMyMembership).mockReturnValue(KnownMembership.Join);
|
||||
|
||||
mocked(DMRoomMap.shared().getUserIdForRoomId).mockImplementation((roomId: string) => {
|
||||
if (roomId === testDMRoomId) {
|
||||
|
|
|
@ -17,6 +17,7 @@ limitations under the License.
|
|||
import React, { ComponentProps } from "react";
|
||||
import { render, RenderResult } from "@testing-library/react";
|
||||
import { MatrixEvent, RoomMember } from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership, Membership } from "matrix-js-sdk/src/types";
|
||||
|
||||
import {
|
||||
getMockClientWithEventEmitter,
|
||||
|
@ -61,8 +62,8 @@ describe("EventListSummary", function () {
|
|||
interface MembershipEventParams {
|
||||
senderId?: string;
|
||||
userId?: string;
|
||||
membership: string;
|
||||
prevMembership?: string;
|
||||
membership: Membership;
|
||||
prevMembership?: Membership;
|
||||
}
|
||||
const generateMembershipEvent = (
|
||||
eventId: string,
|
||||
|
@ -145,7 +146,9 @@ describe("EventListSummary", function () {
|
|||
});
|
||||
|
||||
it("renders expanded events if there are less than props.threshold", function () {
|
||||
const events = generateEvents([{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" }]);
|
||||
const events = generateEvents([
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
]);
|
||||
const props = {
|
||||
events: events,
|
||||
children: generateTiles(events),
|
||||
|
@ -163,8 +166,8 @@ describe("EventListSummary", function () {
|
|||
|
||||
it("renders expanded events if there are less than props.threshold for join and leave", function () {
|
||||
const events = generateEvents([
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
]);
|
||||
const props = {
|
||||
events: events,
|
||||
|
@ -184,9 +187,9 @@ describe("EventListSummary", function () {
|
|||
|
||||
it("renders collapsed events if events.length = props.threshold", function () {
|
||||
const events = generateEvents([
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
]);
|
||||
const props = {
|
||||
events: events,
|
||||
|
@ -203,20 +206,20 @@ describe("EventListSummary", function () {
|
|||
|
||||
it("truncates long join,leave repetitions", function () {
|
||||
const events = generateEvents([
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
]);
|
||||
const props = {
|
||||
events: events,
|
||||
|
@ -235,28 +238,28 @@ describe("EventListSummary", function () {
|
|||
const events = generateEvents([
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "ban",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Ban,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "leave",
|
||||
membership: "invite",
|
||||
prevMembership: KnownMembership.Leave,
|
||||
membership: KnownMembership.Invite,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
]);
|
||||
|
@ -277,30 +280,30 @@ describe("EventListSummary", function () {
|
|||
const events = generateEvents([
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "ban",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Ban,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "leave",
|
||||
membership: "ban",
|
||||
prevMembership: KnownMembership.Leave,
|
||||
membership: KnownMembership.Ban,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
{ userId: "@user_1:some.domain", prevMembership: "ban", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Ban, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "leave",
|
||||
membership: "invite",
|
||||
prevMembership: KnownMembership.Leave,
|
||||
membership: KnownMembership.Invite,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
]);
|
||||
|
@ -324,35 +327,35 @@ describe("EventListSummary", function () {
|
|||
// user_1
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "ban",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Ban,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "leave",
|
||||
membership: "ban",
|
||||
prevMembership: KnownMembership.Leave,
|
||||
membership: KnownMembership.Ban,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
// user_2
|
||||
{
|
||||
userId: "@user_2:some.domain",
|
||||
prevMembership: "ban",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Ban,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
{ userId: "@user_2:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_2:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_2:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_2:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_2:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_2:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_2:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_2:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{
|
||||
userId: "@user_2:some.domain",
|
||||
prevMembership: "leave",
|
||||
membership: "ban",
|
||||
prevMembership: KnownMembership.Leave,
|
||||
membership: KnownMembership.Ban,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
]);
|
||||
|
@ -374,17 +377,17 @@ describe("EventListSummary", function () {
|
|||
it("handles many users following the same sequence of memberships", function () {
|
||||
const events = generateEventsForUsers("@user_$:some.domain", 20, [
|
||||
{
|
||||
prevMembership: "ban",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Ban,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
{ prevMembership: "leave", membership: "join" },
|
||||
{ prevMembership: "join", membership: "leave" },
|
||||
{ prevMembership: "leave", membership: "join" },
|
||||
{ prevMembership: "join", membership: "leave" },
|
||||
{ prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{
|
||||
prevMembership: "leave",
|
||||
membership: "ban",
|
||||
prevMembership: KnownMembership.Leave,
|
||||
membership: KnownMembership.Ban,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
]);
|
||||
|
@ -407,30 +410,30 @@ describe("EventListSummary", function () {
|
|||
const events = generateEvents([
|
||||
{
|
||||
userId: "@user_2:some.domain",
|
||||
prevMembership: "ban",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Ban,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "ban",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Ban,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "leave",
|
||||
membership: "ban",
|
||||
prevMembership: KnownMembership.Leave,
|
||||
membership: KnownMembership.Ban,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
{ userId: "@user_2:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_2:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_2:some.domain", prevMembership: "leave", membership: "join" },
|
||||
{ userId: "@user_2:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_2:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_2:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
{ userId: "@user_2:some.domain", prevMembership: KnownMembership.Leave, membership: KnownMembership.Join },
|
||||
{ userId: "@user_2:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
]);
|
||||
const props = {
|
||||
events: events,
|
||||
|
@ -451,52 +454,52 @@ describe("EventListSummary", function () {
|
|||
it("correctly identifies transitions", function () {
|
||||
const events = generateEvents([
|
||||
// invited
|
||||
{ userId: "@user_1:some.domain", membership: "invite" },
|
||||
{ userId: "@user_1:some.domain", membership: KnownMembership.Invite },
|
||||
// banned
|
||||
{ userId: "@user_1:some.domain", membership: "ban" },
|
||||
{ userId: "@user_1:some.domain", membership: KnownMembership.Ban },
|
||||
// joined
|
||||
{ userId: "@user_1:some.domain", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", membership: KnownMembership.Join },
|
||||
// invite_reject
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "invite",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Invite,
|
||||
membership: KnownMembership.Leave,
|
||||
},
|
||||
// left
|
||||
{ userId: "@user_1:some.domain", prevMembership: "join", membership: "leave" },
|
||||
{ userId: "@user_1:some.domain", prevMembership: KnownMembership.Join, membership: KnownMembership.Leave },
|
||||
// invite_withdrawal
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "invite",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Invite,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
// unbanned
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "ban",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Ban,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
// kicked
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "join",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Join,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
// default for sender=target (leave)
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "????",
|
||||
membership: "leave",
|
||||
prevMembership: "????" as Membership,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@user_1:some.domain",
|
||||
},
|
||||
// default for sender<>target (kicked)
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "????",
|
||||
membership: "leave",
|
||||
prevMembership: "????" as Membership,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
]);
|
||||
|
@ -520,24 +523,24 @@ describe("EventListSummary", function () {
|
|||
const events = generateEvents([
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "invite",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Invite,
|
||||
membership: KnownMembership.Leave,
|
||||
},
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "invite",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Invite,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
{
|
||||
userId: "@user_2:some.domain",
|
||||
prevMembership: "invite",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Invite,
|
||||
membership: KnownMembership.Leave,
|
||||
},
|
||||
{
|
||||
userId: "@user_2:some.domain",
|
||||
prevMembership: "invite",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Invite,
|
||||
membership: KnownMembership.Leave,
|
||||
senderId: "@some_other_user:some.domain",
|
||||
},
|
||||
]);
|
||||
|
@ -560,13 +563,13 @@ describe("EventListSummary", function () {
|
|||
const events = generateEvents([
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "invite",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Invite,
|
||||
membership: KnownMembership.Leave,
|
||||
},
|
||||
{
|
||||
userId: "@user_1:some.domain",
|
||||
prevMembership: "invite",
|
||||
membership: "leave",
|
||||
prevMembership: KnownMembership.Invite,
|
||||
membership: KnownMembership.Leave,
|
||||
},
|
||||
]);
|
||||
const props = {
|
||||
|
@ -584,10 +587,10 @@ describe("EventListSummary", function () {
|
|||
|
||||
it('handles a summary length = 2, with no "others"', function () {
|
||||
const events = generateEvents([
|
||||
{ userId: "@user_1:some.domain", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", membership: "join" },
|
||||
{ userId: "@user_2:some.domain", membership: "join" },
|
||||
{ userId: "@user_2:some.domain", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", membership: KnownMembership.Join },
|
||||
{ userId: "@user_1:some.domain", membership: KnownMembership.Join },
|
||||
{ userId: "@user_2:some.domain", membership: KnownMembership.Join },
|
||||
{ userId: "@user_2:some.domain", membership: KnownMembership.Join },
|
||||
]);
|
||||
const props = {
|
||||
events: events,
|
||||
|
@ -604,9 +607,9 @@ describe("EventListSummary", function () {
|
|||
|
||||
it('handles a summary length = 2, with 1 "other"', function () {
|
||||
const events = generateEvents([
|
||||
{ userId: "@user_1:some.domain", membership: "join" },
|
||||
{ userId: "@user_2:some.domain", membership: "join" },
|
||||
{ userId: "@user_3:some.domain", membership: "join" },
|
||||
{ userId: "@user_1:some.domain", membership: KnownMembership.Join },
|
||||
{ userId: "@user_2:some.domain", membership: KnownMembership.Join },
|
||||
{ userId: "@user_3:some.domain", membership: KnownMembership.Join },
|
||||
]);
|
||||
const props = {
|
||||
events: events,
|
||||
|
@ -622,7 +625,7 @@ describe("EventListSummary", function () {
|
|||
});
|
||||
|
||||
it('handles a summary length = 2, with many "others"', function () {
|
||||
const events = generateEventsForUsers("@user_$:some.domain", 20, [{ membership: "join" }]);
|
||||
const events = generateEventsForUsers("@user_$:some.domain", 20, [{ membership: KnownMembership.Join }]);
|
||||
const props = {
|
||||
events: events,
|
||||
children: generateTiles(events),
|
||||
|
|
|
@ -15,13 +15,14 @@ limitations under the License.
|
|||
import { render } from "@testing-library/react";
|
||||
import React from "react";
|
||||
import { TooltipProvider } from "@vector-im/compound-web";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
|
||||
import FacePile from "../../../../src/components/views/elements/FacePile";
|
||||
import { mkRoomMember } from "../../../test-utils";
|
||||
|
||||
describe("<FacePile />", () => {
|
||||
it("renders with a tooltip", () => {
|
||||
const member = mkRoomMember("123", "456", "join");
|
||||
const member = mkRoomMember("123", "456", KnownMembership.Join);
|
||||
|
||||
const { asFragment } = render(
|
||||
<FacePile members={[member]} size="36px" overflow={false} tooltipLabel="tooltip" />,
|
||||
|
|
|
@ -15,6 +15,7 @@ limitations under the License.
|
|||
import { render } from "@testing-library/react";
|
||||
import React from "react";
|
||||
import { TooltipProvider } from "@vector-im/compound-web";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
|
||||
import { mkRoom, mkRoomMember, stubClient, withClientContextRenderOptions } from "../../../test-utils";
|
||||
import RoomFacePile from "../../../../src/components/views/elements/RoomFacePile";
|
||||
|
@ -27,7 +28,9 @@ describe("<RoomFacePile />", () => {
|
|||
DMRoomMap.makeShared(cli);
|
||||
const room = mkRoom(cli, "!123");
|
||||
|
||||
jest.spyOn(room, "getJoinedMembers").mockReturnValue([mkRoomMember(room.roomId, "@bob:example.org", "join")]);
|
||||
jest.spyOn(room, "getJoinedMembers").mockReturnValue([
|
||||
mkRoomMember(room.roomId, "@bob:example.org", KnownMembership.Join),
|
||||
]);
|
||||
|
||||
const { asFragment } = render(
|
||||
<TooltipProvider>
|
||||
|
|
|
@ -17,6 +17,7 @@ limitations under the License.
|
|||
import React from "react";
|
||||
import { render, fireEvent, screen } from "@testing-library/react";
|
||||
import { EventType, MatrixEvent, Room, MatrixClient, JoinRule } from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import { mocked, MockedObject } from "jest-mock";
|
||||
import { TooltipProvider } from "@vector-im/compound-web";
|
||||
|
||||
|
@ -86,7 +87,7 @@ describe("<RoomSummaryCard />", () => {
|
|||
state_key: "",
|
||||
});
|
||||
room.currentState.setStateEvents([roomCreateEvent]);
|
||||
room.updateMyMembership("join");
|
||||
room.updateMyMembership(KnownMembership.Join);
|
||||
|
||||
jest.spyOn(Modal, "createDialog");
|
||||
jest.spyOn(RightPanelStore.instance, "pushCard");
|
||||
|
|
|
@ -29,6 +29,7 @@ import {
|
|||
DeviceVerificationStatus,
|
||||
Device,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import {
|
||||
Phase,
|
||||
VerificationRequest,
|
||||
|
@ -943,8 +944,8 @@ describe("<PowerLevelEditor />", () => {
|
|||
|
||||
describe("<RoomKickButton />", () => {
|
||||
const defaultMember = new RoomMember(defaultRoomId, defaultUserId);
|
||||
const memberWithInviteMembership = { ...defaultMember, membership: "invite" };
|
||||
const memberWithJoinMembership = { ...defaultMember, membership: "join" };
|
||||
const memberWithInviteMembership = { ...defaultMember, membership: KnownMembership.Invite };
|
||||
const memberWithJoinMembership = { ...defaultMember, membership: KnownMembership.Join };
|
||||
|
||||
let defaultProps: Parameters<typeof RoomKickButton>[0];
|
||||
beforeEach(() => {
|
||||
|
@ -1031,7 +1032,7 @@ describe("<RoomKickButton />", () => {
|
|||
// null vs their member followed by
|
||||
// my member vs their member
|
||||
const mockMyMember = { powerLevel: 1 };
|
||||
const mockTheirMember = { membership: "invite", powerLevel: 0 };
|
||||
const mockTheirMember = { membership: KnownMembership.Invite, powerLevel: 0 };
|
||||
|
||||
const mockRoom = {
|
||||
getMember: jest
|
||||
|
@ -1052,7 +1053,7 @@ describe("<RoomKickButton />", () => {
|
|||
|
||||
describe("<BanToggleButton />", () => {
|
||||
const defaultMember = new RoomMember(defaultRoomId, defaultUserId);
|
||||
const memberWithBanMembership = { ...defaultMember, membership: "ban" };
|
||||
const memberWithBanMembership = { ...defaultMember, membership: KnownMembership.Ban };
|
||||
let defaultProps: Parameters<typeof BanToggleButton>[0];
|
||||
beforeEach(() => {
|
||||
defaultProps = {
|
||||
|
@ -1161,7 +1162,7 @@ describe("<BanToggleButton />", () => {
|
|||
// null vs their member followed by
|
||||
// my member vs their member
|
||||
const mockMyMember = { powerLevel: 1 };
|
||||
const mockTheirMember = { membership: "ban", powerLevel: 0 };
|
||||
const mockTheirMember = { membership: KnownMembership.Ban, powerLevel: 0 };
|
||||
|
||||
const mockRoom = {
|
||||
getMember: jest
|
||||
|
@ -1182,7 +1183,7 @@ describe("<BanToggleButton />", () => {
|
|||
|
||||
describe("<RoomAdminToolsContainer />", () => {
|
||||
const defaultMember = new RoomMember(defaultRoomId, defaultUserId);
|
||||
defaultMember.membership = "invite";
|
||||
defaultMember.membership = KnownMembership.Invite;
|
||||
|
||||
let defaultProps: Parameters<typeof RoomAdminToolsContainer>[0];
|
||||
beforeEach(() => {
|
||||
|
@ -1245,7 +1246,11 @@ describe("<RoomAdminToolsContainer />", () => {
|
|||
mockMeMember.powerLevel = 51; // defaults to 50
|
||||
mockRoom.getMember.mockReturnValueOnce(mockMeMember);
|
||||
|
||||
const defaultMemberWithPowerLevelAndJoinMembership = { ...defaultMember, powerLevel: 0, membership: "join" };
|
||||
const defaultMemberWithPowerLevelAndJoinMembership = {
|
||||
...defaultMember,
|
||||
powerLevel: 0,
|
||||
membership: KnownMembership.Join,
|
||||
};
|
||||
|
||||
renderComponent({
|
||||
member: defaultMemberWithPowerLevelAndJoinMembership,
|
||||
|
@ -1263,7 +1268,11 @@ describe("<RoomAdminToolsContainer />", () => {
|
|||
mockMeMember.powerLevel = 51; // defaults to 50
|
||||
mockRoom.getMember.mockReturnValueOnce(mockMeMember);
|
||||
|
||||
const defaultMemberWithPowerLevelAndJoinMembership = { ...defaultMember, powerLevel: 0, membership: "join" };
|
||||
const defaultMemberWithPowerLevelAndJoinMembership = {
|
||||
...defaultMember,
|
||||
powerLevel: 0,
|
||||
membership: KnownMembership.Join,
|
||||
};
|
||||
|
||||
renderComponent({
|
||||
member: defaultMemberWithPowerLevelAndJoinMembership,
|
||||
|
|
|
@ -26,6 +26,7 @@ import {
|
|||
ISearchResults,
|
||||
IContent,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import { CallType } from "matrix-js-sdk/src/webrtc/call";
|
||||
import { ClientWidgetApi, Widget } from "matrix-widget-api";
|
||||
import EventEmitter from "events";
|
||||
|
@ -907,7 +908,7 @@ function mkJoinEvent(roomId: string, userId: string) {
|
|||
room: roomId,
|
||||
user: userId,
|
||||
content: {
|
||||
membership: "join",
|
||||
membership: KnownMembership.Join,
|
||||
avatar_url: "mxc://example.org/" + userId,
|
||||
},
|
||||
});
|
||||
|
|
|
@ -18,6 +18,7 @@ limitations under the License.
|
|||
import React from "react";
|
||||
import { act, fireEvent, render, RenderResult, screen } 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 { compare } from "matrix-js-sdk/src/utils";
|
||||
import { mocked, MockedObject } from "jest-mock";
|
||||
import { TooltipProvider } from "@vector-im/compound-web";
|
||||
|
@ -170,7 +171,7 @@ describe("MemberList", () => {
|
|||
const usersPerLevel = 2;
|
||||
for (let i = 0; i < usersPerLevel; i++) {
|
||||
const adminUser = new RoomMember(memberListRoom.roomId, `@admin${i}:localhost`);
|
||||
adminUser.membership = "join";
|
||||
adminUser.membership = KnownMembership.Join;
|
||||
adminUser.powerLevel = 100;
|
||||
adminUser.user = User.createUser(adminUser.userId, client);
|
||||
adminUser.user.currentlyActive = true;
|
||||
|
@ -180,7 +181,7 @@ describe("MemberList", () => {
|
|||
adminUsers.push(adminUser);
|
||||
|
||||
const moderatorUser = new RoomMember(memberListRoom.roomId, `@moderator${i}:localhost`);
|
||||
moderatorUser.membership = "join";
|
||||
moderatorUser.membership = KnownMembership.Join;
|
||||
moderatorUser.powerLevel = 50;
|
||||
moderatorUser.user = User.createUser(moderatorUser.userId, client);
|
||||
moderatorUser.user.currentlyActive = true;
|
||||
|
@ -190,7 +191,7 @@ describe("MemberList", () => {
|
|||
moderatorUsers.push(moderatorUser);
|
||||
|
||||
const defaultUser = new RoomMember(memberListRoom.roomId, `@default${i}:localhost`);
|
||||
defaultUser.membership = "join";
|
||||
defaultUser.membership = KnownMembership.Join;
|
||||
defaultUser.powerLevel = 0;
|
||||
defaultUser.user = User.createUser(defaultUser.userId, client);
|
||||
defaultUser.user.currentlyActive = true;
|
||||
|
@ -402,7 +403,7 @@ describe("MemberList", () => {
|
|||
});
|
||||
|
||||
it("renders disabled invite button when current user is a member but does not have rights to invite", async () => {
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue("join");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Join);
|
||||
jest.spyOn(room, "canInvite").mockReturnValue(false);
|
||||
|
||||
renderComponent();
|
||||
|
@ -413,7 +414,7 @@ describe("MemberList", () => {
|
|||
});
|
||||
|
||||
it("renders enabled invite button when current user is a member and has rights to invite", async () => {
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue("join");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Join);
|
||||
jest.spyOn(room, "canInvite").mockReturnValue(true);
|
||||
|
||||
renderComponent();
|
||||
|
@ -424,7 +425,7 @@ describe("MemberList", () => {
|
|||
|
||||
it("opens room inviter on button click", async () => {
|
||||
jest.spyOn(defaultDispatcher, "dispatch");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue("join");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Join);
|
||||
jest.spyOn(room, "canInvite").mockReturnValue(true);
|
||||
|
||||
renderComponent();
|
||||
|
|
|
@ -27,6 +27,7 @@ import {
|
|||
PendingEventOrdering,
|
||||
ReceiptType,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
|
||||
import type { MatrixClient } from "matrix-js-sdk/src/matrix";
|
||||
import { mkThread } from "../../../../test-utils/threads";
|
||||
|
@ -140,7 +141,7 @@ describe("UnreadNotificationBadge", () => {
|
|||
});
|
||||
|
||||
it("adds a warning for invites", () => {
|
||||
room.updateMyMembership("invite");
|
||||
room.updateMyMembership(KnownMembership.Invite);
|
||||
render(getComponent());
|
||||
expect(screen.queryByText("!")).not.toBeNull();
|
||||
});
|
||||
|
|
|
@ -25,6 +25,7 @@ import {
|
|||
Room,
|
||||
RoomMember,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import {
|
||||
createEvent,
|
||||
fireEvent,
|
||||
|
@ -154,7 +155,7 @@ describe("RoomHeader", () => {
|
|||
name: "Member",
|
||||
rawDisplayName: "Member",
|
||||
roomId: room.roomId,
|
||||
membership: "join",
|
||||
membership: KnownMembership.Join,
|
||||
getAvatarUrl: () => "mxc://avatar.url/image.png",
|
||||
getMxcAvatarUrl: () => "mxc://avatar.url/image.png",
|
||||
},
|
||||
|
@ -172,7 +173,7 @@ describe("RoomHeader", () => {
|
|||
name: "Member",
|
||||
rawDisplayName: "Member",
|
||||
roomId: room.roomId,
|
||||
membership: "join",
|
||||
membership: KnownMembership.Join,
|
||||
getAvatarUrl: () => "mxc://avatar.url/image.png",
|
||||
getMxcAvatarUrl: () => "mxc://avatar.url/image.png",
|
||||
},
|
||||
|
@ -181,7 +182,7 @@ describe("RoomHeader", () => {
|
|||
name: "Member",
|
||||
rawDisplayName: "Member",
|
||||
roomId: room.roomId,
|
||||
membership: "join",
|
||||
membership: KnownMembership.Join,
|
||||
getAvatarUrl: () => "mxc://avatar.url/image.png",
|
||||
getMxcAvatarUrl: () => "mxc://avatar.url/image.png",
|
||||
},
|
||||
|
@ -190,7 +191,7 @@ describe("RoomHeader", () => {
|
|||
name: "Member",
|
||||
rawDisplayName: "Member",
|
||||
roomId: room.roomId,
|
||||
membership: "join",
|
||||
membership: KnownMembership.Join,
|
||||
getAvatarUrl: () => "mxc://avatar.url/image.png",
|
||||
getMxcAvatarUrl: () => "mxc://avatar.url/image.png",
|
||||
},
|
||||
|
@ -199,7 +200,7 @@ describe("RoomHeader", () => {
|
|||
name: "Bot user",
|
||||
rawDisplayName: "Bot user",
|
||||
roomId: room.roomId,
|
||||
membership: "join",
|
||||
membership: KnownMembership.Join,
|
||||
getAvatarUrl: () => "mxc://avatar.url/image.png",
|
||||
getMxcAvatarUrl: () => "mxc://avatar.url/image.png",
|
||||
},
|
||||
|
@ -703,7 +704,7 @@ function mockRoomMembers(room: Room, count: number) {
|
|||
name: `Member ${index}`,
|
||||
rawDisplayName: `Member ${index}`,
|
||||
roomId: room.roomId,
|
||||
membership: "join",
|
||||
membership: KnownMembership.Join,
|
||||
getAvatarUrl: () => `mxc://avatar.url/user-${index}.png`,
|
||||
getMxcAvatarUrl: () => `mxc://avatar.url/user-${index}.png`,
|
||||
}));
|
||||
|
|
|
@ -25,6 +25,7 @@ import {
|
|||
RoomMember,
|
||||
RoomStateEvent,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import React from "react";
|
||||
|
||||
import ErrorDialog from "../../../../src/components/views/dialogs/ErrorDialog";
|
||||
|
@ -111,15 +112,26 @@ describe("RoomKnocksBar", () => {
|
|||
const other = new RoomMember(roomId, "@doe:example.org");
|
||||
|
||||
bob.setMembershipEvent(
|
||||
new MatrixEvent({ content: { displayname: "Bob", membership: "knock" }, type: EventType.RoomMember }),
|
||||
new MatrixEvent({
|
||||
content: { displayname: "Bob", membership: KnownMembership.Knock },
|
||||
type: EventType.RoomMember,
|
||||
}),
|
||||
);
|
||||
jane.setMembershipEvent(
|
||||
new MatrixEvent({ content: { displayname: "Jane", membership: "knock" }, type: EventType.RoomMember }),
|
||||
new MatrixEvent({
|
||||
content: { displayname: "Jane", membership: KnownMembership.Knock },
|
||||
type: EventType.RoomMember,
|
||||
}),
|
||||
);
|
||||
john.setMembershipEvent(
|
||||
new MatrixEvent({ content: { displayname: "John", membership: "knock" }, type: EventType.RoomMember }),
|
||||
new MatrixEvent({
|
||||
content: { displayname: "John", membership: KnownMembership.Knock },
|
||||
type: EventType.RoomMember,
|
||||
}),
|
||||
);
|
||||
other.setMembershipEvent(
|
||||
new MatrixEvent({ content: { membership: KnownMembership.Knock }, type: EventType.RoomMember }),
|
||||
);
|
||||
other.setMembershipEvent(new MatrixEvent({ content: { membership: "knock" }, type: EventType.RoomMember }));
|
||||
|
||||
beforeEach(async () => {
|
||||
await clearAllModals();
|
||||
|
@ -178,7 +190,7 @@ describe("RoomKnocksBar", () => {
|
|||
it("renders a link to open the room settings people tab", () => {
|
||||
bob.setMembershipEvent(
|
||||
new MatrixEvent({
|
||||
content: { displayname: "Bob", membership: "knock", reason: "some reason" },
|
||||
content: { displayname: "Bob", membership: KnownMembership.Knock, reason: "some reason" },
|
||||
type: EventType.RoomMember,
|
||||
}),
|
||||
);
|
||||
|
|
|
@ -17,6 +17,7 @@ limitations under the License.
|
|||
import React, { ComponentProps } from "react";
|
||||
import { render, fireEvent, RenderResult, waitFor } from "@testing-library/react";
|
||||
import { Room, RoomMember, MatrixError, IContent } from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
|
||||
import { withClientContextRenderOptions, stubClient } from "../../../test-utils";
|
||||
import { MatrixClientPeg } from "../../../../src/MatrixClientPeg";
|
||||
|
@ -49,10 +50,10 @@ const makeMockRoomMember = ({
|
|||
}: {
|
||||
userId?: string;
|
||||
isKicked?: boolean;
|
||||
membership?: "invite" | "ban" | "leave";
|
||||
membership?: KnownMembership.Invite | KnownMembership.Ban | KnownMembership.Leave;
|
||||
content?: Partial<IContent>;
|
||||
memberContent?: Partial<IContent>;
|
||||
oldMembership?: "join" | "knock";
|
||||
oldMembership?: KnownMembership.Join | KnownMembership.Knock;
|
||||
}) =>
|
||||
({
|
||||
userId,
|
||||
|
@ -180,7 +181,11 @@ describe("<RoomPreviewBar />", () => {
|
|||
it("renders denied request message", () => {
|
||||
const room = createRoom(roomId, otherUserId);
|
||||
jest.spyOn(room, "getMember").mockReturnValue(
|
||||
makeMockRoomMember({ isKicked: true, membership: "leave", oldMembership: "knock" }),
|
||||
makeMockRoomMember({
|
||||
isKicked: true,
|
||||
membership: KnownMembership.Leave,
|
||||
oldMembership: KnownMembership.Knock,
|
||||
}),
|
||||
);
|
||||
const component = getComponent({ room, promptAskToJoin: true });
|
||||
|
||||
|
@ -191,7 +196,11 @@ describe("<RoomPreviewBar />", () => {
|
|||
const onForgetClick = jest.fn();
|
||||
const room = createRoom(roomId, otherUserId);
|
||||
jest.spyOn(room, "getMember").mockReturnValue(
|
||||
makeMockRoomMember({ isKicked: true, membership: "leave", oldMembership: "knock" }),
|
||||
makeMockRoomMember({
|
||||
isKicked: true,
|
||||
membership: KnownMembership.Leave,
|
||||
oldMembership: KnownMembership.Knock,
|
||||
}),
|
||||
);
|
||||
const component = getComponent({ room, promptAskToJoin: true, onForgetClick });
|
||||
|
||||
|
@ -201,7 +210,7 @@ describe("<RoomPreviewBar />", () => {
|
|||
|
||||
it("renders banned message", () => {
|
||||
const room = createRoom(roomId, otherUserId);
|
||||
jest.spyOn(room, "getMember").mockReturnValue(makeMockRoomMember({ membership: "ban" }));
|
||||
jest.spyOn(room, "getMember").mockReturnValue(makeMockRoomMember({ membership: KnownMembership.Ban }));
|
||||
const component = getComponent({ loading: true, room });
|
||||
|
||||
expect(getMessage(component)).toMatchSnapshot();
|
||||
|
@ -244,8 +253,8 @@ describe("<RoomPreviewBar />", () => {
|
|||
const userMember = makeMockRoomMember({ userId });
|
||||
const userMemberWithDmInvite = makeMockRoomMember({
|
||||
userId,
|
||||
membership: "invite",
|
||||
memberContent: { is_direct: true, membership: "invite" },
|
||||
membership: KnownMembership.Invite,
|
||||
memberContent: { is_direct: true, membership: KnownMembership.Invite },
|
||||
});
|
||||
const inviterMember = makeMockRoomMember({
|
||||
userId: inviterUserId,
|
||||
|
|
|
@ -18,6 +18,7 @@ import React from "react";
|
|||
import { mocked, Mocked } from "jest-mock";
|
||||
import { render, screen, act } from "@testing-library/react";
|
||||
import { PendingEventOrdering, Room, RoomStateEvent, RoomType } from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
|
||||
import type { MatrixClient, RoomMember } from "matrix-js-sdk/src/matrix";
|
||||
import { stubClient, wrapInMatrixClientContext, mkRoomMember } from "../../../test-utils";
|
||||
|
@ -68,7 +69,7 @@ describe("RoomPreviewCard", () => {
|
|||
|
||||
it("shows a beta pill on Jitsi video room invites", async () => {
|
||||
jest.spyOn(room, "getType").mockReturnValue(RoomType.ElementVideo);
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue("invite");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Invite);
|
||||
enabledFeatures = ["feature_video_rooms"];
|
||||
|
||||
await renderPreview();
|
||||
|
@ -77,7 +78,7 @@ describe("RoomPreviewCard", () => {
|
|||
|
||||
it("shows a beta pill on Element video room invites", async () => {
|
||||
jest.spyOn(room, "getType").mockReturnValue(RoomType.UnstableCall);
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue("invite");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Invite);
|
||||
enabledFeatures = ["feature_video_rooms", "feature_element_call_video_rooms"];
|
||||
|
||||
await renderPreview();
|
||||
|
@ -85,7 +86,7 @@ describe("RoomPreviewCard", () => {
|
|||
});
|
||||
|
||||
it("doesn't show a beta pill on normal invites", async () => {
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue("invite");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Invite);
|
||||
|
||||
await renderPreview();
|
||||
expect(screen.queryByRole("button", { name: /beta/i })).toBeNull();
|
||||
|
@ -93,7 +94,7 @@ describe("RoomPreviewCard", () => {
|
|||
|
||||
it("shows instructions on Jitsi video rooms invites if video rooms are disabled", async () => {
|
||||
jest.spyOn(room, "getType").mockReturnValue(RoomType.ElementVideo);
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue("invite");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Invite);
|
||||
|
||||
await renderPreview();
|
||||
screen.getByText(/enable video rooms in labs/i);
|
||||
|
@ -101,7 +102,7 @@ describe("RoomPreviewCard", () => {
|
|||
|
||||
it("shows instructions on Element video rooms invites if video rooms are disabled", async () => {
|
||||
jest.spyOn(room, "getType").mockReturnValue(RoomType.UnstableCall);
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue("invite");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Invite);
|
||||
enabledFeatures = ["feature_element_call_video_rooms"];
|
||||
|
||||
await renderPreview();
|
||||
|
|
|
@ -25,6 +25,7 @@ import {
|
|||
RoomStateEvent,
|
||||
Thread,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import { Widget } from "matrix-widget-api";
|
||||
|
||||
import type { RoomMember } from "matrix-js-sdk/src/matrix";
|
||||
|
@ -187,7 +188,7 @@ describe("RoomTile", () => {
|
|||
return name === "feature_ask_to_join";
|
||||
});
|
||||
mocked(shouldShowComponent).mockReturnValue(true);
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue("knock");
|
||||
jest.spyOn(room, "getMyMembership").mockReturnValue(KnownMembership.Knock);
|
||||
const { container } = renderRoomTile();
|
||||
expect(container.querySelector(".mx_RoomTile_sticky")).toBeInTheDocument();
|
||||
expect(screen.queryByRole("button", { name: "Room options" })).not.toBeInTheDocument();
|
||||
|
@ -198,9 +199,15 @@ describe("RoomTile", () => {
|
|||
return name === "feature_ask_to_join";
|
||||
});
|
||||
mocked(shouldShowComponent).mockReturnValue(true);
|
||||
const roomMember = mkRoomMember(room.roomId, MatrixClientPeg.get()!.getSafeUserId(), "leave", true, {
|
||||
membership: "knock",
|
||||
});
|
||||
const roomMember = mkRoomMember(
|
||||
room.roomId,
|
||||
MatrixClientPeg.get()!.getSafeUserId(),
|
||||
KnownMembership.Leave,
|
||||
true,
|
||||
{
|
||||
membership: KnownMembership.Knock,
|
||||
},
|
||||
);
|
||||
jest.spyOn(room, "getMember").mockReturnValue(roomMember);
|
||||
const { container } = renderRoomTile();
|
||||
expect(container.querySelector(".mx_RoomTile_sticky")).toBeInTheDocument();
|
||||
|
|
|
@ -28,6 +28,7 @@ import {
|
|||
MatrixError,
|
||||
Visibility,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import { defer, IDeferred } from "matrix-js-sdk/src/utils";
|
||||
|
||||
import {
|
||||
|
@ -177,7 +178,7 @@ describe("<JoinRuleSettings />", () => {
|
|||
const memberBob = new RoomMember(roomId, "@bob:server.org");
|
||||
const memberCharlie = new RoomMember(roomId, "@charlie:server.org");
|
||||
jest.spyOn(room, "getMembersWithMembership").mockImplementation((membership) =>
|
||||
membership === "join" ? [memberAlice, memberBob] : [memberCharlie],
|
||||
membership === KnownMembership.Join ? [memberAlice, memberBob] : [memberCharlie],
|
||||
);
|
||||
const upgradedRoom = new Room(newRoomId, client, userId);
|
||||
setRoomStateEvents(upgradedRoom, preferredRoomVersion);
|
||||
|
|
|
@ -24,6 +24,7 @@ import {
|
|||
RoomMember,
|
||||
RoomStateEvent,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import React from "react";
|
||||
|
||||
import ErrorDialog from "../../../../../../src/components/views/dialogs/ErrorDialog";
|
||||
|
@ -91,7 +92,7 @@ describe("PeopleRoomSettingsTab", () => {
|
|||
content: {
|
||||
avatar_url: "mxc://example.org/albert-einstein.png",
|
||||
displayname: "Albert Einstein",
|
||||
membership: "knock",
|
||||
membership: KnownMembership.Knock,
|
||||
reason,
|
||||
},
|
||||
origin_server_ts: -464140800000,
|
||||
|
@ -110,7 +111,7 @@ describe("PeopleRoomSettingsTab", () => {
|
|||
new MatrixEvent({
|
||||
content: {
|
||||
displayname: "albert.einstein",
|
||||
membership: "knock",
|
||||
membership: KnownMembership.Knock,
|
||||
},
|
||||
type: EventType.RoomMember,
|
||||
}),
|
||||
|
@ -138,7 +139,7 @@ describe("PeopleRoomSettingsTab", () => {
|
|||
new MatrixEvent({
|
||||
content: {
|
||||
displayname: "albert.einstein",
|
||||
membership: "knock",
|
||||
membership: KnownMembership.Knock,
|
||||
reason,
|
||||
},
|
||||
type: EventType.RoomMember,
|
||||
|
|
|
@ -17,6 +17,7 @@ limitations under the License.
|
|||
import React from "react";
|
||||
import { fireEvent, getByRole, render, RenderResult, screen, waitFor } from "@testing-library/react";
|
||||
import { MatrixClient, EventType, MatrixEvent, Room, RoomMember, ISendEventResponse } from "matrix-js-sdk/src/matrix";
|
||||
import { KnownMembership } from "matrix-js-sdk/src/types";
|
||||
import { mocked } from "jest-mock";
|
||||
import { defer } from "matrix-js-sdk/src/utils";
|
||||
import userEvent from "@testing-library/user-event";
|
||||
|
@ -198,7 +199,7 @@ describe("RolesRoomSettingsTab", () => {
|
|||
new MatrixEvent({
|
||||
type: EventType.RoomMember,
|
||||
content: {
|
||||
membership: "ban",
|
||||
membership: KnownMembership.Ban,
|
||||
reason: "just testing",
|
||||
},
|
||||
sender: userId,
|
||||
|
@ -219,7 +220,7 @@ describe("RolesRoomSettingsTab", () => {
|
|||
new MatrixEvent({
|
||||
type: EventType.RoomMember,
|
||||
content: {
|
||||
membership: "ban",
|
||||
membership: KnownMembership.Ban,
|
||||
reason: "just testing",
|
||||
},
|
||||
sender: userId,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue