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
Switch to importing most things from the main matrix-js-sdk export (#11406)
* Switch to importing most things from the main matrix-js-sdk export * fix imports * Iterate * Fix tests
This commit is contained in:
committed by
GitHub
parent
0842559fb2
commit
ad73b0c16e
@@ -17,9 +17,8 @@ limitations under the License.
|
||||
import React from "react";
|
||||
import { mocked } from "jest-mock";
|
||||
import { fireEvent, render, screen, waitFor, waitForElementToBeRemoved } from "@testing-library/react";
|
||||
import { MatrixClient, Room } from "matrix-js-sdk/src/matrix";
|
||||
import { MatrixClient, Room, HierarchyRoom } from "matrix-js-sdk/src/matrix";
|
||||
import { RoomHierarchy } from "matrix-js-sdk/src/room-hierarchy";
|
||||
import { IHierarchyRoom } from "matrix-js-sdk/src/@types/spaces";
|
||||
|
||||
import { MatrixClientPeg } from "../../../src/MatrixClientPeg";
|
||||
import { mkStubRoom, stubClient } from "../../test-utils";
|
||||
@@ -85,41 +84,41 @@ describe("SpaceHierarchy", () => {
|
||||
it("grabs last room that is in hierarchy when latest version is in hierarchy", () => {
|
||||
const hierarchy = {
|
||||
roomMap: new Map([
|
||||
[roomV1.roomId, { room_id: roomV1.roomId } as IHierarchyRoom],
|
||||
[roomV2.roomId, { room_id: roomV2.roomId } as IHierarchyRoom],
|
||||
[roomV3.roomId, { room_id: roomV3.roomId } as IHierarchyRoom],
|
||||
[roomV1.roomId, { room_id: roomV1.roomId } as HierarchyRoom],
|
||||
[roomV2.roomId, { room_id: roomV2.roomId } as HierarchyRoom],
|
||||
[roomV3.roomId, { room_id: roomV3.roomId } as HierarchyRoom],
|
||||
]),
|
||||
} as RoomHierarchy;
|
||||
const localRoomV1 = toLocalRoom(client, { room_id: roomV1.roomId } as IHierarchyRoom, hierarchy);
|
||||
const localRoomV1 = toLocalRoom(client, { room_id: roomV1.roomId } as HierarchyRoom, hierarchy);
|
||||
expect(localRoomV1.room_id).toEqual(roomV3.roomId);
|
||||
const localRoomV2 = toLocalRoom(client, { room_id: roomV2.roomId } as IHierarchyRoom, hierarchy);
|
||||
const localRoomV2 = toLocalRoom(client, { room_id: roomV2.roomId } as HierarchyRoom, hierarchy);
|
||||
expect(localRoomV2.room_id).toEqual(roomV3.roomId);
|
||||
const localRoomV3 = toLocalRoom(client, { room_id: roomV3.roomId } as IHierarchyRoom, hierarchy);
|
||||
const localRoomV3 = toLocalRoom(client, { room_id: roomV3.roomId } as HierarchyRoom, hierarchy);
|
||||
expect(localRoomV3.room_id).toEqual(roomV3.roomId);
|
||||
});
|
||||
|
||||
it("grabs last room that is in hierarchy when latest version is *not* in hierarchy", () => {
|
||||
const hierarchy = {
|
||||
roomMap: new Map([
|
||||
[roomV1.roomId, { room_id: roomV1.roomId } as IHierarchyRoom],
|
||||
[roomV2.roomId, { room_id: roomV2.roomId } as IHierarchyRoom],
|
||||
[roomV1.roomId, { room_id: roomV1.roomId } as HierarchyRoom],
|
||||
[roomV2.roomId, { room_id: roomV2.roomId } as HierarchyRoom],
|
||||
]),
|
||||
} as RoomHierarchy;
|
||||
const localRoomV1 = toLocalRoom(client, { room_id: roomV1.roomId } as IHierarchyRoom, hierarchy);
|
||||
const localRoomV1 = toLocalRoom(client, { room_id: roomV1.roomId } as HierarchyRoom, hierarchy);
|
||||
expect(localRoomV1.room_id).toEqual(roomV2.roomId);
|
||||
const localRoomV2 = toLocalRoom(client, { room_id: roomV2.roomId } as IHierarchyRoom, hierarchy);
|
||||
const localRoomV2 = toLocalRoom(client, { room_id: roomV2.roomId } as HierarchyRoom, hierarchy);
|
||||
expect(localRoomV2.room_id).toEqual(roomV2.roomId);
|
||||
const localRoomV3 = toLocalRoom(client, { room_id: roomV3.roomId } as IHierarchyRoom, hierarchy);
|
||||
const localRoomV3 = toLocalRoom(client, { room_id: roomV3.roomId } as HierarchyRoom, hierarchy);
|
||||
expect(localRoomV3.room_id).toEqual(roomV2.roomId);
|
||||
});
|
||||
|
||||
it("returns specified room when none of the versions is in hierarchy", () => {
|
||||
const hierarchy = { roomMap: new Map([]) } as RoomHierarchy;
|
||||
const localRoomV1 = toLocalRoom(client, { room_id: roomV1.roomId } as IHierarchyRoom, hierarchy);
|
||||
const localRoomV1 = toLocalRoom(client, { room_id: roomV1.roomId } as HierarchyRoom, hierarchy);
|
||||
expect(localRoomV1.room_id).toEqual(roomV1.roomId);
|
||||
const localRoomV2 = toLocalRoom(client, { room_id: roomV2.roomId } as IHierarchyRoom, hierarchy);
|
||||
const localRoomV2 = toLocalRoom(client, { room_id: roomV2.roomId } as HierarchyRoom, hierarchy);
|
||||
expect(localRoomV2.room_id).toEqual(roomV2.roomId);
|
||||
const localRoomV3 = toLocalRoom(client, { room_id: roomV3.roomId } as IHierarchyRoom, hierarchy);
|
||||
const localRoomV3 = toLocalRoom(client, { room_id: roomV3.roomId } as HierarchyRoom, hierarchy);
|
||||
expect(localRoomV3.room_id).toEqual(roomV3.roomId);
|
||||
});
|
||||
|
||||
@@ -130,7 +129,7 @@ describe("SpaceHierarchy", () => {
|
||||
it("Passes through the dynamic predecessor setting", async () => {
|
||||
mocked(client.getRoomUpgradeHistory).mockClear();
|
||||
const hierarchy = { roomMap: new Map([]) } as RoomHierarchy;
|
||||
toLocalRoom(client, { room_id: roomV1.roomId } as IHierarchyRoom, hierarchy);
|
||||
toLocalRoom(client, { room_id: roomV1.roomId } as HierarchyRoom, hierarchy);
|
||||
expect(client.getRoomUpgradeHistory).toHaveBeenCalledWith(roomV1.roomId, true, false);
|
||||
});
|
||||
});
|
||||
@@ -146,7 +145,7 @@ describe("SpaceHierarchy", () => {
|
||||
it("Passes through the dynamic predecessor setting", async () => {
|
||||
mocked(client.getRoomUpgradeHistory).mockClear();
|
||||
const hierarchy = { roomMap: new Map([]) } as RoomHierarchy;
|
||||
toLocalRoom(client, { room_id: roomV1.roomId } as IHierarchyRoom, hierarchy);
|
||||
toLocalRoom(client, { room_id: roomV1.roomId } as HierarchyRoom, hierarchy);
|
||||
expect(client.getRoomUpgradeHistory).toHaveBeenCalledWith(roomV1.roomId, true, true);
|
||||
});
|
||||
});
|
||||
@@ -183,7 +182,7 @@ describe("SpaceHierarchy", () => {
|
||||
);
|
||||
[room1, room2, space1, room3].forEach((r) => mocked(r.getMyMembership).mockReturnValue("leave"));
|
||||
|
||||
const hierarchyRoot: IHierarchyRoom = {
|
||||
const hierarchyRoot: HierarchyRoom = {
|
||||
room_id: root.roomId,
|
||||
num_joined_members: 1,
|
||||
room_type: "m.space",
|
||||
@@ -213,21 +212,21 @@ describe("SpaceHierarchy", () => {
|
||||
world_readable: true,
|
||||
guest_can_join: true,
|
||||
};
|
||||
const hierarchyRoom1: IHierarchyRoom = {
|
||||
const hierarchyRoom1: HierarchyRoom = {
|
||||
room_id: room1.roomId,
|
||||
num_joined_members: 2,
|
||||
children_state: [],
|
||||
world_readable: true,
|
||||
guest_can_join: true,
|
||||
};
|
||||
const hierarchyRoom2: IHierarchyRoom = {
|
||||
const hierarchyRoom2: HierarchyRoom = {
|
||||
room_id: room2.roomId,
|
||||
num_joined_members: 3,
|
||||
children_state: [],
|
||||
world_readable: true,
|
||||
guest_can_join: true,
|
||||
};
|
||||
const hierarchyRoom3: IHierarchyRoom = {
|
||||
const hierarchyRoom3: HierarchyRoom = {
|
||||
name: "Nested room",
|
||||
room_id: room3.roomId,
|
||||
num_joined_members: 3,
|
||||
@@ -235,7 +234,7 @@ describe("SpaceHierarchy", () => {
|
||||
world_readable: true,
|
||||
guest_can_join: true,
|
||||
};
|
||||
const hierarchySpace1: IHierarchyRoom = {
|
||||
const hierarchySpace1: HierarchyRoom = {
|
||||
room_id: space1.roomId,
|
||||
name: "Nested space",
|
||||
num_joined_members: 1,
|
||||
|
@@ -20,7 +20,7 @@ import { mocked, MockedObject } from "jest-mock";
|
||||
import fetchMock from "fetch-mock-jest";
|
||||
import { DELEGATED_OIDC_COMPATIBILITY, IdentityProviderBrand } from "matrix-js-sdk/src/@types/auth";
|
||||
import { logger } from "matrix-js-sdk/src/logger";
|
||||
import { createClient, MatrixClient } from "matrix-js-sdk/src/matrix";
|
||||
import * as Matrix from "matrix-js-sdk/src/matrix";
|
||||
import { OidcError } from "matrix-js-sdk/src/oidc/error";
|
||||
|
||||
import SdkConfig from "../../../../src/SdkConfig";
|
||||
@@ -32,8 +32,6 @@ import { Features } from "../../../../src/settings/Settings";
|
||||
import { ValidatedDelegatedAuthConfig } from "../../../../src/utils/ValidatedServerConfig";
|
||||
import * as registerClientUtils from "../../../../src/utils/oidc/registerClient";
|
||||
|
||||
jest.mock("matrix-js-sdk/src/matrix");
|
||||
|
||||
jest.useRealTimers();
|
||||
|
||||
const oidcStaticClientsConfig = {
|
||||
@@ -48,7 +46,7 @@ describe("Login", function () {
|
||||
const mockClient = mocked({
|
||||
login: jest.fn().mockResolvedValue({}),
|
||||
loginFlows: jest.fn(),
|
||||
} as unknown as MatrixClient);
|
||||
} as unknown as Matrix.MatrixClient);
|
||||
|
||||
beforeEach(function () {
|
||||
SdkConfig.put({
|
||||
@@ -62,7 +60,7 @@ describe("Login", function () {
|
||||
user_id: "@user:server",
|
||||
});
|
||||
mockClient.loginFlows.mockClear().mockResolvedValue({ flows: [{ type: "m.login.password" }] });
|
||||
mocked(createClient).mockImplementation((opts) => {
|
||||
jest.spyOn(Matrix, "createClient").mockImplementation((opts) => {
|
||||
mockClient.idBaseUrl = opts.idBaseUrl;
|
||||
mockClient.baseUrl = opts.baseUrl;
|
||||
return mockClient;
|
||||
|
@@ -16,8 +16,7 @@ limitations under the License.
|
||||
|
||||
import React from "react";
|
||||
import { act, fireEvent, render } from "@testing-library/react";
|
||||
import { Beacon, RoomMember, MatrixEvent } from "matrix-js-sdk/src/matrix";
|
||||
import { LocationAssetType } from "matrix-js-sdk/src/@types/location";
|
||||
import { Beacon, RoomMember, MatrixEvent, LocationAssetType } from "matrix-js-sdk/src/matrix";
|
||||
|
||||
import BeaconListItem from "../../../../src/components/views/beacon/BeaconListItem";
|
||||
import MatrixClientContext from "../../../../src/contexts/MatrixClientContext";
|
||||
|
@@ -16,8 +16,7 @@ limitations under the License.
|
||||
|
||||
import React from "react";
|
||||
import { render, RenderResult } from "@testing-library/react";
|
||||
import { RoomMember } from "matrix-js-sdk/src/matrix";
|
||||
import { LocationAssetType } from "matrix-js-sdk/src/@types/location";
|
||||
import { RoomMember, LocationAssetType } from "matrix-js-sdk/src/matrix";
|
||||
|
||||
import LocationViewDialog from "../../../../src/components/views/location/LocationViewDialog";
|
||||
import { TILE_SERVER_WK_KEY } from "../../../../src/utils/WellKnownUtils";
|
||||
|
@@ -15,8 +15,7 @@ limitations under the License.
|
||||
*/
|
||||
|
||||
import { mocked } from "jest-mock";
|
||||
import { MatrixClient } from "matrix-js-sdk/src/matrix";
|
||||
import { makeLocationContent } from "matrix-js-sdk/src/content-helpers";
|
||||
import { ContentHelpers, MatrixClient } from "matrix-js-sdk/src/matrix";
|
||||
import { LegacyLocationEventContent, MLocationEventContent } from "matrix-js-sdk/src/@types/location";
|
||||
|
||||
import { doMaybeLocalRoomAction } from "../../../../src/utils/local-room";
|
||||
@@ -30,10 +29,6 @@ jest.mock("../../../../src/utils/local-room", () => ({
|
||||
doMaybeLocalRoomAction: jest.fn(),
|
||||
}));
|
||||
|
||||
jest.mock("matrix-js-sdk/src/content-helpers", () => ({
|
||||
makeLocationContent: jest.fn(),
|
||||
}));
|
||||
|
||||
describe("shareLocation", () => {
|
||||
const roomId = "!room:example.com";
|
||||
const shareType = LocationShareType.Pin;
|
||||
@@ -42,6 +37,7 @@ describe("shareLocation", () => {
|
||||
let shareLocationFn: ShareLocationFn;
|
||||
|
||||
beforeEach(() => {
|
||||
const makeLocationContent = jest.spyOn(ContentHelpers, "makeLocationContent");
|
||||
client = {
|
||||
sendMessage: jest.fn(),
|
||||
} as unknown as MatrixClient;
|
||||
|
@@ -16,8 +16,7 @@ limitations under the License.
|
||||
|
||||
import React, { ComponentProps } from "react";
|
||||
import { fireEvent, render } from "@testing-library/react";
|
||||
import { LocationAssetType } from "matrix-js-sdk/src/@types/location";
|
||||
import { ClientEvent, RoomMember, SyncState } from "matrix-js-sdk/src/matrix";
|
||||
import { LocationAssetType, ClientEvent, RoomMember, SyncState } from "matrix-js-sdk/src/matrix";
|
||||
import * as maplibregl from "maplibre-gl";
|
||||
import { logger } from "matrix-js-sdk/src/logger";
|
||||
|
||||
|
@@ -22,8 +22,8 @@ import {
|
||||
MatrixEvent,
|
||||
RoomStateEvent,
|
||||
RoomMember,
|
||||
ContentHelpers,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { makeBeaconContent, makeBeaconInfoContent } from "matrix-js-sdk/src/content-helpers";
|
||||
import { M_BEACON } from "matrix-js-sdk/src/@types/beacon";
|
||||
import { logger } from "matrix-js-sdk/src/logger";
|
||||
import { Mocked } from "jest-mock";
|
||||
@@ -239,12 +239,12 @@ describe("OwnBeaconStore", () => {
|
||||
expect(mockClient.sendEvent).toHaveBeenCalledWith(
|
||||
room1Id,
|
||||
M_BEACON.name,
|
||||
makeBeaconContent(defaultLocationUri, now, alicesRoom1BeaconInfo.getId()!),
|
||||
ContentHelpers.makeBeaconContent(defaultLocationUri, now, alicesRoom1BeaconInfo.getId()!),
|
||||
);
|
||||
expect(mockClient.sendEvent).toHaveBeenCalledWith(
|
||||
room2Id,
|
||||
M_BEACON.name,
|
||||
makeBeaconContent(defaultLocationUri, now, alicesRoom2BeaconInfo.getId()!),
|
||||
ContentHelpers.makeBeaconContent(defaultLocationUri, now, alicesRoom2BeaconInfo.getId()!),
|
||||
);
|
||||
});
|
||||
});
|
||||
@@ -1155,14 +1155,14 @@ describe("OwnBeaconStore", () => {
|
||||
|
||||
it("creates a live beacon", async () => {
|
||||
const store = await makeOwnBeaconStore();
|
||||
const content = makeBeaconInfoContent(100);
|
||||
const content = ContentHelpers.makeBeaconInfoContent(100);
|
||||
await store.createLiveBeacon(room1Id, content);
|
||||
expect(mockClient.unstable_createLiveBeacon).toHaveBeenCalledWith(room1Id, content);
|
||||
});
|
||||
|
||||
it("sets new beacon event id in local storage", async () => {
|
||||
const store = await makeOwnBeaconStore();
|
||||
const content = makeBeaconInfoContent(100);
|
||||
const content = ContentHelpers.makeBeaconInfoContent(100);
|
||||
await store.createLiveBeacon(room1Id, content);
|
||||
|
||||
expect(localStorageSetSpy).toHaveBeenCalledWith(
|
||||
@@ -1174,7 +1174,7 @@ describe("OwnBeaconStore", () => {
|
||||
it("handles saving beacon event id when local storage has bad value", async () => {
|
||||
localStorageGetSpy.mockReturnValue(JSON.stringify({ id: "1" }));
|
||||
const store = await makeOwnBeaconStore();
|
||||
const content = makeBeaconInfoContent(100);
|
||||
const content = ContentHelpers.makeBeaconInfoContent(100);
|
||||
await store.createLiveBeacon(room1Id, content);
|
||||
|
||||
// stored successfully
|
||||
@@ -1183,7 +1183,7 @@ describe("OwnBeaconStore", () => {
|
||||
|
||||
it("creates a live beacon without error when no beacons exist for room", async () => {
|
||||
const store = await makeOwnBeaconStore();
|
||||
const content = makeBeaconInfoContent(100);
|
||||
const content = ContentHelpers.makeBeaconInfoContent(100);
|
||||
await store.createLiveBeacon(room1Id, content);
|
||||
|
||||
// didn't throw, no error log
|
||||
@@ -1195,7 +1195,7 @@ describe("OwnBeaconStore", () => {
|
||||
makeRoomsWithStateEvents([alicesRoom1BeaconInfo, alicesRoom2BeaconInfo]);
|
||||
const store = await makeOwnBeaconStore();
|
||||
|
||||
const content = makeBeaconInfoContent(100);
|
||||
const content = ContentHelpers.makeBeaconInfoContent(100);
|
||||
await store.createLiveBeacon(room1Id, content);
|
||||
|
||||
// stop alicesRoom1BeaconInfo
|
||||
|
@@ -15,10 +15,15 @@ limitations under the License.
|
||||
*/
|
||||
|
||||
import { MockedObject } from "jest-mock";
|
||||
import { makeBeaconInfoContent, makeBeaconContent } from "matrix-js-sdk/src/content-helpers";
|
||||
import { MatrixClient, MatrixEvent, Beacon, getBeaconInfoIdentifier } from "matrix-js-sdk/src/matrix";
|
||||
import {
|
||||
MatrixClient,
|
||||
MatrixEvent,
|
||||
Beacon,
|
||||
getBeaconInfoIdentifier,
|
||||
ContentHelpers,
|
||||
LocationAssetType,
|
||||
} from "matrix-js-sdk/src/matrix";
|
||||
import { M_BEACON, M_BEACON_INFO } from "matrix-js-sdk/src/@types/beacon";
|
||||
import { LocationAssetType } from "matrix-js-sdk/src/@types/location";
|
||||
|
||||
import { getMockGeolocationPositionError } from "./location";
|
||||
import { makeRoomWithStateEvents } from "./room";
|
||||
@@ -54,7 +59,7 @@ export const makeBeaconInfoEvent = (
|
||||
room_id: roomId,
|
||||
state_key: sender,
|
||||
sender,
|
||||
content: makeBeaconInfoContent(timeout, isLive, description, assetType, timestamp),
|
||||
content: ContentHelpers.makeBeaconInfoContent(timeout, isLive, description, assetType, timestamp),
|
||||
});
|
||||
|
||||
event.event.origin_server_ts = Date.now();
|
||||
@@ -97,7 +102,7 @@ export const makeBeaconEvent = (
|
||||
type: M_BEACON.name,
|
||||
room_id: roomId,
|
||||
sender,
|
||||
content: makeBeaconContent(geoUri, timestamp, beaconInfoId, description),
|
||||
content: ContentHelpers.makeBeaconContent(geoUri, timestamp, beaconInfoId, description),
|
||||
});
|
||||
};
|
||||
|
||||
|
@@ -15,8 +15,7 @@ limitations under the License.
|
||||
*/
|
||||
|
||||
import { LocationAssetType, M_LOCATION } from "matrix-js-sdk/src/@types/location";
|
||||
import { makeLocationContent } from "matrix-js-sdk/src/content-helpers";
|
||||
import { MatrixEvent, EventType } from "matrix-js-sdk/src/matrix";
|
||||
import { MatrixEvent, EventType, ContentHelpers } from "matrix-js-sdk/src/matrix";
|
||||
|
||||
let id = 1;
|
||||
export const makeLegacyLocationEvent = (geoUri: string): MatrixEvent => {
|
||||
@@ -35,7 +34,7 @@ export const makeLocationEvent = (geoUri: string, assetType?: LocationAssetType)
|
||||
return new MatrixEvent({
|
||||
event_id: `$${++id}`,
|
||||
type: M_LOCATION.name,
|
||||
content: makeLocationContent(
|
||||
content: ContentHelpers.makeLocationContent(
|
||||
`Found at ${geoUri} at 2021-12-21T12:22+0000`,
|
||||
geoUri,
|
||||
252523,
|
||||
|
@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
import { OidcClientConfig } from "matrix-js-sdk/src/autodiscovery";
|
||||
import { OidcClientConfig } from "matrix-js-sdk/src/matrix";
|
||||
import { ValidatedIssuerMetadata } from "matrix-js-sdk/src/oidc/validate";
|
||||
|
||||
/**
|
||||
|
@@ -14,9 +14,8 @@ See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
import { AutoDiscovery, AutoDiscoveryAction, ClientConfig } from "matrix-js-sdk/src/autodiscovery";
|
||||
import { AutoDiscovery, AutoDiscoveryAction, ClientConfig, M_AUTHENTICATION } from "matrix-js-sdk/src/matrix";
|
||||
import { logger } from "matrix-js-sdk/src/logger";
|
||||
import { M_AUTHENTICATION } from "matrix-js-sdk/src/matrix";
|
||||
|
||||
import AutoDiscoveryUtils from "../../src/utils/AutoDiscoveryUtils";
|
||||
|
||||
|
@@ -22,13 +22,13 @@ import {
|
||||
M_LOCATION,
|
||||
M_TIMESTAMP,
|
||||
} from "matrix-js-sdk/src/@types/location";
|
||||
import { makeLocationContent } from "matrix-js-sdk/src/content-helpers";
|
||||
import { ContentHelpers } from "matrix-js-sdk/src/matrix";
|
||||
|
||||
import { isSelfLocation } from "../../../src/utils/location";
|
||||
|
||||
describe("isSelfLocation", () => {
|
||||
it("Returns true for a full m.asset event", () => {
|
||||
const content = makeLocationContent("", "0", Date.now());
|
||||
const content = ContentHelpers.makeLocationContent("", "0", Date.now());
|
||||
expect(isSelfLocation(content)).toBe(true);
|
||||
});
|
||||
|
||||
@@ -61,7 +61,7 @@ describe("isSelfLocation", () => {
|
||||
});
|
||||
|
||||
it("Returns false for an unknown asset type", () => {
|
||||
const content = makeLocationContent(
|
||||
const content = ContentHelpers.makeLocationContent(
|
||||
undefined /* text */,
|
||||
"geo:foo",
|
||||
0,
|
||||
|
Reference in New Issue
Block a user