1 jest.setTimeout(120000);
2 import { None } from "@sniptt/monads";
3 import { PersonViewSafe } from "lemmy-js-client";
19 saveUserSettingsFederated,
23 beforeAll(async () => {
27 let apShortname: string;
29 function assertUserFederation(
30 userOne: PersonViewSafe,
31 userTwo: PersonViewSafe
33 expect(userOne.person.name).toBe(userTwo.person.name);
34 expect(userOne.person.display_name.unwrapOr("none")).toBe(
35 userTwo.person.display_name.unwrapOr("none")
37 expect(userOne.person.bio.unwrapOr("none")).toBe(
38 userTwo.person.bio.unwrapOr("none")
40 expect(userOne.person.actor_id).toBe(userTwo.person.actor_id);
41 expect(userOne.person.avatar.unwrapOr("none")).toBe(
42 userTwo.person.avatar.unwrapOr("none")
44 expect(userOne.person.banner.unwrapOr("none")).toBe(
45 userTwo.person.banner.unwrapOr("none")
47 expect(userOne.person.published).toBe(userTwo.person.published);
50 test("Create user", async () => {
51 let userRes = await registerUser(alpha);
52 expect(userRes.jwt).toBeDefined();
53 alpha.auth = userRes.jwt;
55 let site = await getSite(alpha);
56 expect(site.my_user).toBeDefined();
58 site.my_user.unwrap().local_user_view.person.name
62 test("Set some user settings, check that they are federated", async () => {
63 await saveUserSettingsFederated(alpha);
64 let alphaPerson = (await resolvePerson(alpha, apShortname)).person.unwrap();
65 let betaPerson = (await resolvePerson(beta, apShortname)).person.unwrap();
66 assertUserFederation(alphaPerson, betaPerson);
69 test("Delete user", async () => {
70 let userRes = await registerUser(alpha);
71 expect(userRes.jwt).toBeDefined();
77 // make a local post and comment
78 let alphaCommunity = (
79 await resolveCommunity(user, "!main@lemmy-alpha:8541")
81 let localPost = (await createPost(user, alphaCommunity.community.id))
83 expect(localPost).toBeDefined();
84 let localComment = (await createComment(user, localPost.id, None))
85 .comment_view.comment;
86 expect(localComment).toBeDefined();
88 // make a remote post and comment
89 let betaCommunity = (await resolveBetaCommunity(user)).community.unwrap();
90 let remotePost = (await createPost(user, betaCommunity.community.id))
92 expect(remotePost).toBeDefined();
93 let remoteComment = (await createComment(user, remotePost.id, None))
94 .comment_view.comment;
95 expect(remoteComment).toBeDefined();
97 await deleteUser(user);
99 expect((await resolvePost(alpha, localPost)).post.isNone()).toBe(true);
100 expect((await resolveComment(alpha, localComment)).comment.isNone()).toBe(
103 expect((await resolvePost(alpha, remotePost)).post.isNone()).toBe(true);
104 expect((await resolveComment(alpha, remoteComment)).comment.isNone()).toBe(