]> Untitled Git - lemmy.git/blob - api_tests/src/private_message.spec.ts
Delete migrations_testing folder (#3751)
[lemmy.git] / api_tests / src / private_message.spec.ts
1 jest.setTimeout(120000);
2 import {
3   alpha,
4   beta,
5   setupLogins,
6   followBeta,
7   createPrivateMessage,
8   editPrivateMessage,
9   listPrivateMessages,
10   deletePrivateMessage,
11   unfollowRemotes,
12 } from "./shared";
13
14 let recipient_id: number;
15
16 beforeAll(async () => {
17   await setupLogins();
18   await followBeta(alpha);
19   recipient_id = 3;
20 });
21
22 afterAll(async () => {
23   await unfollowRemotes(alpha);
24 });
25
26 test("Create a private message", async () => {
27   let pmRes = await createPrivateMessage(alpha, recipient_id);
28   expect(pmRes.private_message_view.private_message.content).toBeDefined();
29   expect(pmRes.private_message_view.private_message.local).toBe(true);
30   expect(pmRes.private_message_view.creator.local).toBe(true);
31   expect(pmRes.private_message_view.recipient.local).toBe(false);
32
33   let betaPms = await listPrivateMessages(beta);
34   expect(betaPms.private_messages[0].private_message.content).toBeDefined();
35   expect(betaPms.private_messages[0].private_message.local).toBe(false);
36   expect(betaPms.private_messages[0].creator.local).toBe(false);
37   expect(betaPms.private_messages[0].recipient.local).toBe(true);
38 });
39
40 test("Update a private message", async () => {
41   let updatedContent = "A jest test federated private message edited";
42
43   let pmRes = await createPrivateMessage(alpha, recipient_id);
44   let pmUpdated = await editPrivateMessage(
45     alpha,
46     pmRes.private_message_view.private_message.id,
47   );
48   expect(pmUpdated.private_message_view.private_message.content).toBe(
49     updatedContent,
50   );
51
52   let betaPms = await listPrivateMessages(beta);
53   expect(betaPms.private_messages[0].private_message.content).toBe(
54     updatedContent,
55   );
56 });
57
58 test("Delete a private message", async () => {
59   let pmRes = await createPrivateMessage(alpha, recipient_id);
60   let betaPms1 = await listPrivateMessages(beta);
61   let deletedPmRes = await deletePrivateMessage(
62     alpha,
63     true,
64     pmRes.private_message_view.private_message.id,
65   );
66   expect(deletedPmRes.private_message_view.private_message.deleted).toBe(true);
67
68   // The GetPrivateMessages filters out deleted,
69   // even though they are in the actual database.
70   // no reason to show them
71   let betaPms2 = await listPrivateMessages(beta);
72   expect(betaPms2.private_messages.length).toBe(
73     betaPms1.private_messages.length - 1,
74   );
75
76   // Undelete
77   let undeletedPmRes = await deletePrivateMessage(
78     alpha,
79     false,
80     pmRes.private_message_view.private_message.id,
81   );
82   expect(undeletedPmRes.private_message_view.private_message.deleted).toBe(
83     false,
84   );
85
86   let betaPms3 = await listPrivateMessages(beta);
87   expect(betaPms3.private_messages.length).toBe(
88     betaPms1.private_messages.length,
89   );
90 });