diff options
-rw-r--r-- | server/tests/api/users/blocklist.ts | 2 | ||||
-rw-r--r-- | server/tests/api/videos/video-comments.ts | 32 | ||||
-rw-r--r-- | shared/extra-utils/server/jobs.ts | 2 |
3 files changed, 34 insertions, 2 deletions
diff --git a/server/tests/api/users/blocklist.ts b/server/tests/api/users/blocklist.ts index 09e72d068..05e58017a 100644 --- a/server/tests/api/users/blocklist.ts +++ b/server/tests/api/users/blocklist.ts | |||
@@ -38,7 +38,7 @@ import { | |||
38 | removeServerFromAccountBlocklist, | 38 | removeServerFromAccountBlocklist, |
39 | removeServerFromServerBlocklist | 39 | removeServerFromServerBlocklist |
40 | } from '../../../../shared/extra-utils/users/blocklist' | 40 | } from '../../../../shared/extra-utils/users/blocklist' |
41 | import { getUserNotifications } from '@shared/extra-utils/users/user-notifications' | 41 | import { getUserNotifications } from '../../../../shared/extra-utils/users/user-notifications' |
42 | 42 | ||
43 | const expect = chai.expect | 43 | const expect = chai.expect |
44 | 44 | ||
diff --git a/server/tests/api/videos/video-comments.ts b/server/tests/api/videos/video-comments.ts index 95be14c0e..06e4ff9c8 100644 --- a/server/tests/api/videos/video-comments.ts +++ b/server/tests/api/videos/video-comments.ts | |||
@@ -10,6 +10,8 @@ import { | |||
10 | ServerInfo, | 10 | ServerInfo, |
11 | setAccessTokensToServers, | 11 | setAccessTokensToServers, |
12 | updateMyAvatar, | 12 | updateMyAvatar, |
13 | getAccessToken, | ||
14 | createUser, | ||
13 | uploadVideo | 15 | uploadVideo |
14 | } from '../../../../shared/extra-utils/index' | 16 | } from '../../../../shared/extra-utils/index' |
15 | import { | 17 | import { |
@@ -29,6 +31,8 @@ describe('Test video comments', function () { | |||
29 | let threadId | 31 | let threadId |
30 | let replyToDeleteId: number | 32 | let replyToDeleteId: number |
31 | 33 | ||
34 | let userAccessTokenServer1: string | ||
35 | |||
32 | before(async function () { | 36 | before(async function () { |
33 | this.timeout(30000) | 37 | this.timeout(30000) |
34 | 38 | ||
@@ -45,6 +49,14 @@ describe('Test video comments', function () { | |||
45 | accessToken: server.accessToken, | 49 | accessToken: server.accessToken, |
46 | fixture: 'avatar.png' | 50 | fixture: 'avatar.png' |
47 | }) | 51 | }) |
52 | |||
53 | await createUser({ | ||
54 | url: server.url, | ||
55 | accessToken: server.accessToken, | ||
56 | username: 'user1', | ||
57 | password: 'password' | ||
58 | }) | ||
59 | userAccessTokenServer1 = await getAccessToken(server.url, 'user1', 'password') | ||
48 | }) | 60 | }) |
49 | 61 | ||
50 | it('Should not have threads on this video', async function () { | 62 | it('Should not have threads on this video', async function () { |
@@ -69,6 +81,7 @@ describe('Test video comments', function () { | |||
69 | expect(comment.account.host).to.equal('localhost:' + server.port) | 81 | expect(comment.account.host).to.equal('localhost:' + server.port) |
70 | expect(comment.account.url).to.equal('http://localhost:' + server.port + '/accounts/root') | 82 | expect(comment.account.url).to.equal('http://localhost:' + server.port + '/accounts/root') |
71 | expect(comment.totalReplies).to.equal(0) | 83 | expect(comment.totalReplies).to.equal(0) |
84 | expect(comment.totalRepliesFromVideoAuthor).to.equal(0) | ||
72 | expect(dateIsValid(comment.createdAt as string)).to.be.true | 85 | expect(dateIsValid(comment.createdAt as string)).to.be.true |
73 | expect(dateIsValid(comment.updatedAt as string)).to.be.true | 86 | expect(dateIsValid(comment.updatedAt as string)).to.be.true |
74 | }) | 87 | }) |
@@ -91,6 +104,7 @@ describe('Test video comments', function () { | |||
91 | await testImage(server.url, 'avatar-resized', comment.account.avatar.path, '.png') | 104 | await testImage(server.url, 'avatar-resized', comment.account.avatar.path, '.png') |
92 | 105 | ||
93 | expect(comment.totalReplies).to.equal(0) | 106 | expect(comment.totalReplies).to.equal(0) |
107 | expect(comment.totalRepliesFromVideoAuthor).to.equal(0) | ||
94 | expect(dateIsValid(comment.createdAt as string)).to.be.true | 108 | expect(dateIsValid(comment.createdAt as string)).to.be.true |
95 | expect(dateIsValid(comment.updatedAt as string)).to.be.true | 109 | expect(dateIsValid(comment.updatedAt as string)).to.be.true |
96 | 110 | ||
@@ -209,6 +223,24 @@ describe('Test video comments', function () { | |||
209 | expect(res.body.data[2].totalReplies).to.equal(0) | 223 | expect(res.body.data[2].totalReplies).to.equal(0) |
210 | }) | 224 | }) |
211 | 225 | ||
226 | it('Should count replies from the video author correctly', async function () { | ||
227 | const text = 'my super first comment' | ||
228 | await addVideoCommentThread(server.url, server.accessToken, videoUUID, text) | ||
229 | let res = await getVideoCommentThreads(server.url, videoUUID, 0, 5) | ||
230 | const comment: VideoComment = res.body.data[0] | ||
231 | const threadId2 = comment.threadId | ||
232 | |||
233 | const text2 = 'a first answer to thread 4 by a third party' | ||
234 | await addVideoCommentReply(server.url, userAccessTokenServer1, videoId, threadId2, text2) | ||
235 | |||
236 | const text3 = 'my second answer to thread 4' | ||
237 | await addVideoCommentReply(server.url, server.accessToken, videoId, threadId2, text3) | ||
238 | |||
239 | res = await getVideoThreadComments(server.url, videoUUID, threadId2) | ||
240 | const tree: VideoCommentThreadTree = res.body | ||
241 | expect(tree.comment.totalReplies).to.equal(tree.comment.totalRepliesFromVideoAuthor + 1) | ||
242 | }) | ||
243 | |||
212 | after(async function () { | 244 | after(async function () { |
213 | await cleanupTests([ server ]) | 245 | await cleanupTests([ server ]) |
214 | }) | 246 | }) |
diff --git a/shared/extra-utils/server/jobs.ts b/shared/extra-utils/server/jobs.ts index cc1352e14..56fe5fa2a 100644 --- a/shared/extra-utils/server/jobs.ts +++ b/shared/extra-utils/server/jobs.ts | |||
@@ -2,7 +2,7 @@ import * as request from 'supertest' | |||
2 | import { Job, JobState, JobType } from '../../models' | 2 | import { Job, JobState, JobType } from '../../models' |
3 | import { wait } from '../miscs/miscs' | 3 | import { wait } from '../miscs/miscs' |
4 | import { ServerInfo } from './servers' | 4 | import { ServerInfo } from './servers' |
5 | import { makeGetRequest } from '@shared/extra-utils' | 5 | import { makeGetRequest } from '../../../shared/extra-utils' |
6 | 6 | ||
7 | function getJobsList (url: string, accessToken: string, state: JobState) { | 7 | function getJobsList (url: string, accessToken: string, state: JobState) { |
8 | const path = '/api/v1/jobs/' + state | 8 | const path = '/api/v1/jobs/' + state |