mirror of
https://github.com/LemmyNet/lemmy.git
synced 2024-11-05 12:05:01 +00:00
235cc8b228
* Moving settings to Database. - Moves many settings into the database. Fixes #2285 - Adds a local_site and instance table. Fixes #2365 . Fixes #2368 - Separates SQL update an insert forms, to avoid runtime errors. - Adds TypedBuilder to all the SQL forms, instead of default. * Fix weird clippy issue. * Removing extra lines. * Some fixes from suggestions. * Fixing apub tests. * Using instance creation helper function. * Move forms to their own line. * Trying to fix local_site_data, still broken. * Fixing federation tests. * Trying to fix check features 1. * Addressing PR comments. * Adding check_apub to all verify functions.
91 lines
2.7 KiB
TypeScript
91 lines
2.7 KiB
TypeScript
jest.setTimeout(120000);
|
|
import {
|
|
alpha,
|
|
beta,
|
|
setupLogins,
|
|
followBeta,
|
|
createPrivateMessage,
|
|
editPrivateMessage,
|
|
listPrivateMessages,
|
|
deletePrivateMessage,
|
|
unfollowRemotes,
|
|
} from "./shared";
|
|
|
|
let recipient_id: number;
|
|
|
|
beforeAll(async () => {
|
|
await setupLogins();
|
|
await followBeta(alpha);
|
|
recipient_id = 3;
|
|
});
|
|
|
|
afterAll(async () => {
|
|
await unfollowRemotes(alpha);
|
|
});
|
|
|
|
test("Create a private message", async () => {
|
|
let pmRes = await createPrivateMessage(alpha, recipient_id);
|
|
expect(pmRes.private_message_view.private_message.content).toBeDefined();
|
|
expect(pmRes.private_message_view.private_message.local).toBe(true);
|
|
expect(pmRes.private_message_view.creator.local).toBe(true);
|
|
expect(pmRes.private_message_view.recipient.local).toBe(false);
|
|
|
|
let betaPms = await listPrivateMessages(beta);
|
|
expect(betaPms.private_messages[0].private_message.content).toBeDefined();
|
|
expect(betaPms.private_messages[0].private_message.local).toBe(false);
|
|
expect(betaPms.private_messages[0].creator.local).toBe(false);
|
|
expect(betaPms.private_messages[0].recipient.local).toBe(true);
|
|
});
|
|
|
|
test("Update a private message", async () => {
|
|
let updatedContent = "A jest test federated private message edited";
|
|
|
|
let pmRes = await createPrivateMessage(alpha, recipient_id);
|
|
let pmUpdated = await editPrivateMessage(
|
|
alpha,
|
|
pmRes.private_message_view.private_message.id
|
|
);
|
|
expect(pmUpdated.private_message_view.private_message.content).toBe(
|
|
updatedContent
|
|
);
|
|
|
|
let betaPms = await listPrivateMessages(beta);
|
|
expect(betaPms.private_messages[0].private_message.content).toBe(
|
|
updatedContent
|
|
);
|
|
});
|
|
|
|
test("Delete a private message", async () => {
|
|
let pmRes = await createPrivateMessage(alpha, recipient_id);
|
|
let betaPms1 = await listPrivateMessages(beta);
|
|
let deletedPmRes = await deletePrivateMessage(
|
|
alpha,
|
|
true,
|
|
pmRes.private_message_view.private_message.id
|
|
);
|
|
expect(deletedPmRes.private_message_view.private_message.deleted).toBe(true);
|
|
expect(deletedPmRes.private_message_view.private_message.content).toBe("");
|
|
|
|
// The GetPrivateMessages filters out deleted,
|
|
// even though they are in the actual database.
|
|
// no reason to show them
|
|
let betaPms2 = await listPrivateMessages(beta);
|
|
expect(betaPms2.private_messages.length).toBe(
|
|
betaPms1.private_messages.length - 1
|
|
);
|
|
|
|
// Undelete
|
|
let undeletedPmRes = await deletePrivateMessage(
|
|
alpha,
|
|
false,
|
|
pmRes.private_message_view.private_message.id
|
|
);
|
|
expect(undeletedPmRes.private_message_view.private_message.deleted).toBe(
|
|
false
|
|
);
|
|
|
|
let betaPms3 = await listPrivateMessages(beta);
|
|
expect(betaPms3.private_messages.length).toBe(
|
|
betaPms1.private_messages.length
|
|
);
|
|
});
|