Skip to content

Commit 622b9ea

Browse files
Marcos Spessatto Defendidebdutdeb
authored andcommitted
test: add tests for uncovered core functions (#24)
1 parent 49a9f6c commit 622b9ea

File tree

4 files changed

+84
-3
lines changed

4 files changed

+84
-3
lines changed

packages/core/src/events/m.room.create.spec.ts

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { expect, test } from "bun:test";
33
import { generateId } from "../../../homeserver/src/authentication";
44
import { generateKeyPairsFromString } from "../../../homeserver/src/keys";
55
import { type SignedEvent, signEvent } from "../../../homeserver/src/signEvent";
6-
import { type RoomCreateEvent, roomCreateEvent } from "./m.room.create";
6+
import { type RoomCreateEvent, isRoomCreateEvent, roomCreateEvent } from "./m.room.create";
77

88
const finalEventId = "$0AQU5dG_mtjH6qavAxYrQsDC0a_-6T3DHs1yoxf5fz4";
99
const finalEvent = {
@@ -55,3 +55,18 @@ test("roomCreateEvent", async () => {
5555

5656
expect(eventId).toBe(finalEventId);
5757
});
58+
59+
test("isRoomCreateEvent", () => {
60+
const validEvent = roomCreateEvent({
61+
roomId: "!someRoom:example.org",
62+
sender: "@user:example.org",
63+
});
64+
65+
const invalidEvent = {
66+
...validEvent,
67+
type: "m.room.member"
68+
};
69+
70+
expect(isRoomCreateEvent(validEvent)).toBe(true);
71+
expect(isRoomCreateEvent(invalidEvent)).toBe(false);
72+
});

packages/core/src/events/m.room.join_rules.spec.ts

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { expect, test } from "bun:test";
33
import { generateId } from "../../../homeserver/src/authentication";
44
import { generateKeyPairsFromString } from "../../../homeserver/src/keys";
55
import { signEvent } from "../../../homeserver/src/signEvent";
6-
import { roomJoinRulesEvent } from "./m.room.join_rules";
6+
import { isRoomJoinRulesEvent, roomJoinRulesEvent } from "./m.room.join_rules";
77

88
const finalEventId = "$Uxo9MgF-4HQNEZdkkQDzgh9wlZ1yJbDXTMXCh6aZBi4";
99
const finalEvent = {
@@ -61,3 +61,21 @@ test("roomJoinRulesEvent", async () => {
6161

6262
expect(eventId).toBe(finalEventId);
6363
});
64+
65+
test("isRoomJoinRulesEvent", () => {
66+
const validEvent = roomJoinRulesEvent({
67+
roomId: "!someRoom:example.org",
68+
sender: "@user:example.org",
69+
auth_events: [],
70+
prev_events: [],
71+
depth: 1,
72+
});
73+
74+
const invalidEvent = {
75+
...validEvent,
76+
type: "m.room.member",
77+
};
78+
79+
expect(isRoomJoinRulesEvent(validEvent)).toBe(true);
80+
expect(isRoomJoinRulesEvent(invalidEvent)).toBe(false);
81+
});

packages/core/src/events/m.room.power_levels.spec.ts

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { expect, test } from "bun:test";
33
import { generateId } from "../../../homeserver/src/authentication";
44
import { generateKeyPairsFromString } from "../../../homeserver/src/keys";
55
import { signEvent } from "../../../homeserver/src/signEvent";
6-
import { roomPowerLevelsEvent } from "./m.room.power_levels";
6+
import { isRoomPowerLevelsEvent, roomPowerLevelsEvent } from "./m.room.power_levels";
77

88
const finalEventId = "$T20EETjD2OuaC1OVyg8iIbJGTNeGBsMiWoAagBOVRNE";
99
const finalEvent = {
@@ -79,3 +79,21 @@ test("roomPowerLevelsEvent", async () => {
7979

8080
expect(eventId).toBe(finalEventId);
8181
});
82+
83+
test("isRoomPowerLevelsEvent", () => {
84+
const validEvent = roomPowerLevelsEvent({
85+
roomId: "!someRoom:example.org",
86+
members: ["@user:example.org"],
87+
auth_events: [],
88+
prev_events: [],
89+
depth: 1,
90+
});
91+
92+
const invalidEvent = {
93+
...validEvent,
94+
type: "m.room.member",
95+
};
96+
97+
expect(isRoomPowerLevelsEvent(validEvent)).toBe(true);
98+
expect(isRoomPowerLevelsEvent(invalidEvent)).toBe(false);
99+
});
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import { expect, test } from "bun:test";
2+
3+
import { type EventBase } from "./eventBase";
4+
import { isRoomThirdPartyInviteEvent } from "./m.room.third_party_invite";
5+
6+
test("isRoomThirdPartyInviteEvent", () => {
7+
const validEvent = {
8+
type: "m.room.third_party_invite",
9+
room_id: "!someRoom:example.org",
10+
sender: "@user:example.org",
11+
content: {
12+
display_name: "Test User",
13+
public_keys: [{
14+
key_validity_url: "https://example.org/valid",
15+
public_key: "abcdef"
16+
}],
17+
key_validity_url: "https://example.org/valid"
18+
},
19+
origin_server_ts: Date.now(),
20+
state_key: "someKey"
21+
};
22+
23+
const invalidEvent = {
24+
...validEvent,
25+
type: "m.room.member"
26+
};
27+
28+
expect(isRoomThirdPartyInviteEvent(validEvent as EventBase)).toBe(true);
29+
expect(isRoomThirdPartyInviteEvent(invalidEvent as EventBase)).toBe(false);
30+
});

0 commit comments

Comments
 (0)