summaryrefslogtreecommitdiffstats
path: root/ui/src/api_tests
diff options
context:
space:
mode:
authorDessalines <dessalines@users.noreply.github.com>2020-05-15 12:36:11 -0400
committerGitHub <noreply@github.com>2020-05-15 12:36:11 -0400
commit940dc73f280742e553395d6a56eaca015a234b3a (patch)
treee81748decb1dc10d1ace2ad6318a94d063ccf23c /ui/src/api_tests
parent3a4973ad68562f9ccb4a9f4442333e0478bc7b04 (diff)
Federated mentions. Fixes #681 (#717)
* Federated mentions. Fixes #681 * Changing some todos, adding comments.
Diffstat (limited to 'ui/src/api_tests')
-rw-r--r--ui/src/api_tests/api.spec.ts45
1 files changed, 42 insertions, 3 deletions
diff --git a/ui/src/api_tests/api.spec.ts b/ui/src/api_tests/api.spec.ts
index dcfb5e62..d5da17c7 100644
--- a/ui/src/api_tests/api.spec.ts
+++ b/ui/src/api_tests/api.spec.ts
@@ -22,6 +22,7 @@ import {
EditPrivateMessageForm,
PrivateMessageResponse,
PrivateMessagesResponse,
+ GetUserMentionsResponse,
} from '../interfaces';
let lemmyAlphaUrl = 'http://localhost:8540';
@@ -379,6 +380,44 @@ describe('main', () => {
expect(getPostResAlpha.comments[0].community_local).toBe(false);
expect(getPostResAlpha.comments[0].creator_local).toBe(false);
expect(getPostResAlpha.comments[0].score).toBe(1);
+
+ // Lemmy alpha responds to their own comment, but mentions lemmy beta.
+ // Make sure lemmy beta gets that in their inbox.
+ let mentionContent = 'A test mention of @lemmy_beta@lemmy_beta:8550';
+ let mentionCommentForm: CommentForm = {
+ content: mentionContent,
+ post_id: 2,
+ parent_id: createResponse.comment.id,
+ auth: lemmyAlphaAuth,
+ };
+
+ let createMentionRes: CommentResponse = await fetch(
+ `${lemmyAlphaApiUrl}/comment`,
+ {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json',
+ },
+ body: wrapper(mentionCommentForm),
+ }
+ ).then(d => d.json());
+
+ expect(createMentionRes.comment.content).toBe(mentionContent);
+ expect(createMentionRes.comment.community_local).toBe(false);
+ expect(createMentionRes.comment.creator_local).toBe(true);
+ expect(createMentionRes.comment.score).toBe(1);
+
+ // Make sure lemmy beta sees that new mention
+ let getMentionUrl = `${lemmyBetaApiUrl}/user/mention?sort=New&unread_only=false&auth=${lemmyBetaAuth}`;
+ let getMentionsRes: GetUserMentionsResponse = await fetch(getMentionUrl, {
+ method: 'GET',
+ }).then(d => d.json());
+
+ // The newest show up first
+ expect(getMentionsRes.mentions[0].content).toBe(mentionContent);
+ expect(getMentionsRes.mentions[0].community_local).toBe(true);
+ expect(getMentionsRes.mentions[0].creator_local).toBe(false);
+ expect(getMentionsRes.mentions[0].score).toBe(1);
});
});
@@ -413,9 +452,9 @@ describe('main', () => {
method: 'GET',
}).then(d => d.json());
- expect(getPostRes.comments[1].content).toBe(content);
- expect(getPostRes.comments[1].community_local).toBe(true);
- expect(getPostRes.comments[1].creator_local).toBe(false);
+ expect(getPostRes.comments[2].content).toBe(content);
+ expect(getPostRes.comments[2].community_local).toBe(true);
+ expect(getPostRes.comments[2].creator_local).toBe(false);
});
});