diff options
Diffstat (limited to 'server/tests/api/notifications/user-notifications.ts')
-rw-r--r-- | server/tests/api/notifications/user-notifications.ts | 88 |
1 files changed, 44 insertions, 44 deletions
diff --git a/server/tests/api/notifications/user-notifications.ts b/server/tests/api/notifications/user-notifications.ts index 15a34f5aa..2a632e16f 100644 --- a/server/tests/api/notifications/user-notifications.ts +++ b/server/tests/api/notifications/user-notifications.ts | |||
@@ -1,4 +1,4 @@ | |||
1 | /* tslint:disable:no-unused-expression */ | 1 | /* eslint-disable @typescript-eslint/no-unused-expressions,@typescript-eslint/require-await */ |
2 | 2 | ||
3 | import * as chai from 'chai' | 3 | import * as chai from 'chai' |
4 | import 'mocha' | 4 | import 'mocha' |
@@ -74,7 +74,7 @@ async function uploadVideoByRemoteAccount (servers: ServerInfo[], additionalPara | |||
74 | const name = 'remote video ' + uuidv4() | 74 | const name = 'remote video ' + uuidv4() |
75 | 75 | ||
76 | const data = Object.assign({ name }, additionalParams) | 76 | const data = Object.assign({ name }, additionalParams) |
77 | const res = await uploadVideo(servers[ 1 ].url, servers[ 1 ].accessToken, data) | 77 | const res = await uploadVideo(servers[1].url, servers[1].accessToken, data) |
78 | 78 | ||
79 | await waitJobs(servers) | 79 | await waitJobs(servers) |
80 | 80 | ||
@@ -85,7 +85,7 @@ async function uploadVideoByLocalAccount (servers: ServerInfo[], additionalParam | |||
85 | const name = 'local video ' + uuidv4() | 85 | const name = 'local video ' + uuidv4() |
86 | 86 | ||
87 | const data = Object.assign({ name }, additionalParams) | 87 | const data = Object.assign({ name }, additionalParams) |
88 | const res = await uploadVideo(servers[ 0 ].url, servers[ 0 ].accessToken, data) | 88 | const res = await uploadVideo(servers[0].url, servers[0].accessToken, data) |
89 | 89 | ||
90 | await waitJobs(servers) | 90 | await waitJobs(servers) |
91 | 91 | ||
@@ -95,9 +95,9 @@ async function uploadVideoByLocalAccount (servers: ServerInfo[], additionalParam | |||
95 | describe('Test users notifications', function () { | 95 | describe('Test users notifications', function () { |
96 | let servers: ServerInfo[] = [] | 96 | let servers: ServerInfo[] = [] |
97 | let userAccessToken: string | 97 | let userAccessToken: string |
98 | let userNotifications: UserNotification[] = [] | 98 | const userNotifications: UserNotification[] = [] |
99 | let adminNotifications: UserNotification[] = [] | 99 | const adminNotifications: UserNotification[] = [] |
100 | let adminNotificationsServer2: UserNotification[] = [] | 100 | const adminNotificationsServer2: UserNotification[] = [] |
101 | const emails: object[] = [] | 101 | const emails: object[] = [] |
102 | let channelId: number | 102 | let channelId: number |
103 | 103 | ||
@@ -142,8 +142,8 @@ describe('Test users notifications', function () { | |||
142 | password: 'super password' | 142 | password: 'super password' |
143 | } | 143 | } |
144 | await createUser({ | 144 | await createUser({ |
145 | url: servers[ 0 ].url, | 145 | url: servers[0].url, |
146 | accessToken: servers[ 0 ].accessToken, | 146 | accessToken: servers[0].accessToken, |
147 | username: user.username, | 147 | username: user.username, |
148 | password: user.password, | 148 | password: user.password, |
149 | videoQuota: 10 * 1000 * 1000 | 149 | videoQuota: 10 * 1000 * 1000 |
@@ -155,15 +155,15 @@ describe('Test users notifications', function () { | |||
155 | await updateMyNotificationSettings(servers[1].url, servers[1].accessToken, allNotificationSettings) | 155 | await updateMyNotificationSettings(servers[1].url, servers[1].accessToken, allNotificationSettings) |
156 | 156 | ||
157 | { | 157 | { |
158 | const socket = getUserNotificationSocket(servers[ 0 ].url, userAccessToken) | 158 | const socket = getUserNotificationSocket(servers[0].url, userAccessToken) |
159 | socket.on('new-notification', n => userNotifications.push(n)) | 159 | socket.on('new-notification', n => userNotifications.push(n)) |
160 | } | 160 | } |
161 | { | 161 | { |
162 | const socket = getUserNotificationSocket(servers[ 0 ].url, servers[0].accessToken) | 162 | const socket = getUserNotificationSocket(servers[0].url, servers[0].accessToken) |
163 | socket.on('new-notification', n => adminNotifications.push(n)) | 163 | socket.on('new-notification', n => adminNotifications.push(n)) |
164 | } | 164 | } |
165 | { | 165 | { |
166 | const socket = getUserNotificationSocket(servers[ 1 ].url, servers[1].accessToken) | 166 | const socket = getUserNotificationSocket(servers[1].url, servers[1].accessToken) |
167 | socket.on('new-notification', n => adminNotificationsServer2.push(n)) | 167 | socket.on('new-notification', n => adminNotificationsServer2.push(n)) |
168 | } | 168 | } |
169 | 169 | ||
@@ -190,7 +190,7 @@ describe('Test users notifications', function () { | |||
190 | 190 | ||
191 | await uploadVideoByLocalAccount(servers) | 191 | await uploadVideoByLocalAccount(servers) |
192 | 192 | ||
193 | const notification = await getLastNotification(servers[ 0 ].url, userAccessToken) | 193 | const notification = await getLastNotification(servers[0].url, userAccessToken) |
194 | expect(notification).to.be.undefined | 194 | expect(notification).to.be.undefined |
195 | 195 | ||
196 | expect(emails).to.have.lengthOf(0) | 196 | expect(emails).to.have.lengthOf(0) |
@@ -221,7 +221,7 @@ describe('Test users notifications', function () { | |||
221 | this.timeout(20000) | 221 | this.timeout(20000) |
222 | 222 | ||
223 | // In 2 seconds | 223 | // In 2 seconds |
224 | let updateAt = new Date(new Date().getTime() + 2000) | 224 | const updateAt = new Date(new Date().getTime() + 2000) |
225 | 225 | ||
226 | const data = { | 226 | const data = { |
227 | privacy: VideoPrivacy.PRIVATE, | 227 | privacy: VideoPrivacy.PRIVATE, |
@@ -240,7 +240,7 @@ describe('Test users notifications', function () { | |||
240 | this.timeout(50000) | 240 | this.timeout(50000) |
241 | 241 | ||
242 | // In 2 seconds | 242 | // In 2 seconds |
243 | let updateAt = new Date(new Date().getTime() + 2000) | 243 | const updateAt = new Date(new Date().getTime() + 2000) |
244 | 244 | ||
245 | const data = { | 245 | const data = { |
246 | privacy: VideoPrivacy.PRIVATE, | 246 | privacy: VideoPrivacy.PRIVATE, |
@@ -259,7 +259,7 @@ describe('Test users notifications', function () { | |||
259 | it('Should not send a notification before the video is published', async function () { | 259 | it('Should not send a notification before the video is published', async function () { |
260 | this.timeout(20000) | 260 | this.timeout(20000) |
261 | 261 | ||
262 | let updateAt = new Date(new Date().getTime() + 1000000) | 262 | const updateAt = new Date(new Date().getTime() + 1000000) |
263 | 263 | ||
264 | const data = { | 264 | const data = { |
265 | privacy: VideoPrivacy.PRIVATE, | 265 | privacy: VideoPrivacy.PRIVATE, |
@@ -386,7 +386,7 @@ describe('Test users notifications', function () { | |||
386 | it('Should not send a new comment notification if the account is muted', async function () { | 386 | it('Should not send a new comment notification if the account is muted', async function () { |
387 | this.timeout(10000) | 387 | this.timeout(10000) |
388 | 388 | ||
389 | await addAccountToAccountBlocklist(servers[ 0 ].url, userAccessToken, 'root') | 389 | await addAccountToAccountBlocklist(servers[0].url, userAccessToken, 'root') |
390 | 390 | ||
391 | const resVideo = await uploadVideo(servers[0].url, userAccessToken, { name: 'super video' }) | 391 | const resVideo = await uploadVideo(servers[0].url, userAccessToken, { name: 'super video' }) |
392 | const uuid = resVideo.body.video.uuid | 392 | const uuid = resVideo.body.video.uuid |
@@ -397,7 +397,7 @@ describe('Test users notifications', function () { | |||
397 | await wait(500) | 397 | await wait(500) |
398 | await checkNewCommentOnMyVideo(baseParams, uuid, commentId, commentId, 'absence') | 398 | await checkNewCommentOnMyVideo(baseParams, uuid, commentId, commentId, 'absence') |
399 | 399 | ||
400 | await removeAccountFromAccountBlocklist(servers[ 0 ].url, userAccessToken, 'root') | 400 | await removeAccountFromAccountBlocklist(servers[0].url, userAccessToken, 'root') |
401 | }) | 401 | }) |
402 | 402 | ||
403 | it('Should send a new comment notification after a local comment on my video', async function () { | 403 | it('Should send a new comment notification after a local comment on my video', async function () { |
@@ -456,9 +456,9 @@ describe('Test users notifications', function () { | |||
456 | await waitJobs(servers) | 456 | await waitJobs(servers) |
457 | 457 | ||
458 | { | 458 | { |
459 | const resThread = await addVideoCommentThread(servers[ 1 ].url, servers[ 1 ].accessToken, uuid, 'comment') | 459 | const resThread = await addVideoCommentThread(servers[1].url, servers[1].accessToken, uuid, 'comment') |
460 | const threadId = resThread.body.comment.id | 460 | const threadId = resThread.body.comment.id |
461 | await addVideoCommentReply(servers[ 1 ].url, servers[ 1 ].accessToken, uuid, threadId, 'reply') | 461 | await addVideoCommentReply(servers[1].url, servers[1].accessToken, uuid, threadId, 'reply') |
462 | } | 462 | } |
463 | 463 | ||
464 | await waitJobs(servers) | 464 | await waitJobs(servers) |
@@ -530,7 +530,7 @@ describe('Test users notifications', function () { | |||
530 | it('Should not send a new mention notification if the account is muted', async function () { | 530 | it('Should not send a new mention notification if the account is muted', async function () { |
531 | this.timeout(10000) | 531 | this.timeout(10000) |
532 | 532 | ||
533 | await addAccountToAccountBlocklist(servers[ 0 ].url, userAccessToken, 'root') | 533 | await addAccountToAccountBlocklist(servers[0].url, userAccessToken, 'root') |
534 | 534 | ||
535 | const resVideo = await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'super video' }) | 535 | const resVideo = await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'super video' }) |
536 | const uuid = resVideo.body.video.uuid | 536 | const uuid = resVideo.body.video.uuid |
@@ -541,7 +541,7 @@ describe('Test users notifications', function () { | |||
541 | await wait(500) | 541 | await wait(500) |
542 | await checkCommentMention(baseParams, uuid, commentId, commentId, 'super root name', 'absence') | 542 | await checkCommentMention(baseParams, uuid, commentId, commentId, 'super root name', 'absence') |
543 | 543 | ||
544 | await removeAccountFromAccountBlocklist(servers[ 0 ].url, userAccessToken, 'root') | 544 | await removeAccountFromAccountBlocklist(servers[0].url, userAccessToken, 'root') |
545 | }) | 545 | }) |
546 | 546 | ||
547 | it('Should not send a new mention notification if the remote account mention a local account', async function () { | 547 | it('Should not send a new mention notification if the remote account mention a local account', async function () { |
@@ -585,7 +585,7 @@ describe('Test users notifications', function () { | |||
585 | 585 | ||
586 | await waitJobs(servers) | 586 | await waitJobs(servers) |
587 | 587 | ||
588 | const text1 = `hello @user_1@localhost:${servers[ 0 ].port} 1` | 588 | const text1 = `hello @user_1@localhost:${servers[0].port} 1` |
589 | const resThread = await addVideoCommentThread(servers[1].url, servers[1].accessToken, uuid, text1) | 589 | const resThread = await addVideoCommentThread(servers[1].url, servers[1].accessToken, uuid, text1) |
590 | const server2ThreadId = resThread.body.comment.id | 590 | const server2ThreadId = resThread.body.comment.id |
591 | 591 | ||
@@ -596,7 +596,7 @@ describe('Test users notifications', function () { | |||
596 | const server1ThreadId = resThread2.body.data[0].id | 596 | const server1ThreadId = resThread2.body.data[0].id |
597 | await checkCommentMention(baseParams, uuid, server1ThreadId, server1ThreadId, 'super root 2 name', 'presence') | 597 | await checkCommentMention(baseParams, uuid, server1ThreadId, server1ThreadId, 'super root 2 name', 'presence') |
598 | 598 | ||
599 | const text2 = `@user_1@localhost:${servers[ 0 ].port} hello 2 @root@localhost:${servers[ 0 ].port}` | 599 | const text2 = `@user_1@localhost:${servers[0].port} hello 2 @root@localhost:${servers[0].port}` |
600 | await addVideoCommentReply(servers[1].url, servers[1].accessToken, uuid, server2ThreadId, text2) | 600 | await addVideoCommentReply(servers[1].url, servers[1].accessToken, uuid, server2ThreadId, text2) |
601 | 601 | ||
602 | await waitJobs(servers) | 602 | await waitJobs(servers) |
@@ -611,7 +611,7 @@ describe('Test users notifications', function () { | |||
611 | }) | 611 | }) |
612 | }) | 612 | }) |
613 | 613 | ||
614 | describe('Video abuse for moderators notification' , function () { | 614 | describe('Video abuse for moderators notification', function () { |
615 | let baseParams: CheckerBaseParams | 615 | let baseParams: CheckerBaseParams |
616 | 616 | ||
617 | before(() => { | 617 | before(() => { |
@@ -722,7 +722,7 @@ describe('Test users notifications', function () { | |||
722 | await uploadVideoByRemoteAccount(servers, { waitTranscoding: false }) | 722 | await uploadVideoByRemoteAccount(servers, { waitTranscoding: false }) |
723 | await waitJobs(servers) | 723 | await waitJobs(servers) |
724 | 724 | ||
725 | const notification = await getLastNotification(servers[ 0 ].url, userAccessToken) | 725 | const notification = await getLastNotification(servers[0].url, userAccessToken) |
726 | if (notification) { | 726 | if (notification) { |
727 | expect(notification.type).to.not.equal(UserNotificationType.MY_VIDEO_PUBLISHED) | 727 | expect(notification.type).to.not.equal(UserNotificationType.MY_VIDEO_PUBLISHED) |
728 | } | 728 | } |
@@ -769,7 +769,7 @@ describe('Test users notifications', function () { | |||
769 | this.timeout(70000) | 769 | this.timeout(70000) |
770 | 770 | ||
771 | // In 2 seconds | 771 | // In 2 seconds |
772 | let updateAt = new Date(new Date().getTime() + 2000) | 772 | const updateAt = new Date(new Date().getTime() + 2000) |
773 | 773 | ||
774 | const data = { | 774 | const data = { |
775 | privacy: VideoPrivacy.PRIVATE, | 775 | privacy: VideoPrivacy.PRIVATE, |
@@ -787,7 +787,7 @@ describe('Test users notifications', function () { | |||
787 | it('Should not send a notification before the video is published', async function () { | 787 | it('Should not send a notification before the video is published', async function () { |
788 | this.timeout(20000) | 788 | this.timeout(20000) |
789 | 789 | ||
790 | let updateAt = new Date(new Date().getTime() + 1000000) | 790 | const updateAt = new Date(new Date().getTime() + 1000000) |
791 | 791 | ||
792 | const data = { | 792 | const data = { |
793 | privacy: VideoPrivacy.PRIVATE, | 793 | privacy: VideoPrivacy.PRIVATE, |
@@ -970,8 +970,8 @@ describe('Test users notifications', function () { | |||
970 | 970 | ||
971 | describe('New actor follow', function () { | 971 | describe('New actor follow', function () { |
972 | let baseParams: CheckerBaseParams | 972 | let baseParams: CheckerBaseParams |
973 | let myChannelName = 'super channel name' | 973 | const myChannelName = 'super channel name' |
974 | let myUserName = 'super user name' | 974 | const myUserName = 'super user name' |
975 | 975 | ||
976 | before(async () => { | 976 | before(async () => { |
977 | baseParams = { | 977 | baseParams = { |
@@ -1143,7 +1143,7 @@ describe('Test users notifications', function () { | |||
1143 | it('Should send unblacklist but not published/subscription notes after unblacklisted if scheduled update pending', async function () { | 1143 | it('Should send unblacklist but not published/subscription notes after unblacklisted if scheduled update pending', async function () { |
1144 | this.timeout(20000) | 1144 | this.timeout(20000) |
1145 | 1145 | ||
1146 | let updateAt = new Date(new Date().getTime() + 1000000) | 1146 | const updateAt = new Date(new Date().getTime() + 1000000) |
1147 | 1147 | ||
1148 | const name = 'video with auto-blacklist and future schedule ' + uuidv4() | 1148 | const name = 'video with auto-blacklist and future schedule ' + uuidv4() |
1149 | 1149 | ||
@@ -1176,7 +1176,7 @@ describe('Test users notifications', function () { | |||
1176 | this.timeout(20000) | 1176 | this.timeout(20000) |
1177 | 1177 | ||
1178 | // In 2 seconds | 1178 | // In 2 seconds |
1179 | let updateAt = new Date(new Date().getTime() + 2000) | 1179 | const updateAt = new Date(new Date().getTime() + 2000) |
1180 | 1180 | ||
1181 | const name = 'video with schedule done and still auto-blacklisted ' + uuidv4() | 1181 | const name = 'video with schedule done and still auto-blacklisted ' + uuidv4() |
1182 | 1182 | ||
@@ -1221,26 +1221,26 @@ describe('Test users notifications', function () { | |||
1221 | 1221 | ||
1222 | describe('Mark as read', function () { | 1222 | describe('Mark as read', function () { |
1223 | it('Should mark as read some notifications', async function () { | 1223 | it('Should mark as read some notifications', async function () { |
1224 | const res = await getUserNotifications(servers[ 0 ].url, userAccessToken, 2, 3) | 1224 | const res = await getUserNotifications(servers[0].url, userAccessToken, 2, 3) |
1225 | const ids = res.body.data.map(n => n.id) | 1225 | const ids = res.body.data.map(n => n.id) |
1226 | 1226 | ||
1227 | await markAsReadNotifications(servers[ 0 ].url, userAccessToken, ids) | 1227 | await markAsReadNotifications(servers[0].url, userAccessToken, ids) |
1228 | }) | 1228 | }) |
1229 | 1229 | ||
1230 | it('Should have the notifications marked as read', async function () { | 1230 | it('Should have the notifications marked as read', async function () { |
1231 | const res = await getUserNotifications(servers[ 0 ].url, userAccessToken, 0, 10) | 1231 | const res = await getUserNotifications(servers[0].url, userAccessToken, 0, 10) |
1232 | 1232 | ||
1233 | const notifications = res.body.data as UserNotification[] | 1233 | const notifications = res.body.data as UserNotification[] |
1234 | expect(notifications[ 0 ].read).to.be.false | 1234 | expect(notifications[0].read).to.be.false |
1235 | expect(notifications[ 1 ].read).to.be.false | 1235 | expect(notifications[1].read).to.be.false |
1236 | expect(notifications[ 2 ].read).to.be.true | 1236 | expect(notifications[2].read).to.be.true |
1237 | expect(notifications[ 3 ].read).to.be.true | 1237 | expect(notifications[3].read).to.be.true |
1238 | expect(notifications[ 4 ].read).to.be.true | 1238 | expect(notifications[4].read).to.be.true |
1239 | expect(notifications[ 5 ].read).to.be.false | 1239 | expect(notifications[5].read).to.be.false |
1240 | }) | 1240 | }) |
1241 | 1241 | ||
1242 | it('Should only list read notifications', async function () { | 1242 | it('Should only list read notifications', async function () { |
1243 | const res = await getUserNotifications(servers[ 0 ].url, userAccessToken, 0, 10, false) | 1243 | const res = await getUserNotifications(servers[0].url, userAccessToken, 0, 10, false) |
1244 | 1244 | ||
1245 | const notifications = res.body.data as UserNotification[] | 1245 | const notifications = res.body.data as UserNotification[] |
1246 | for (const notification of notifications) { | 1246 | for (const notification of notifications) { |
@@ -1249,7 +1249,7 @@ describe('Test users notifications', function () { | |||
1249 | }) | 1249 | }) |
1250 | 1250 | ||
1251 | it('Should only list unread notifications', async function () { | 1251 | it('Should only list unread notifications', async function () { |
1252 | const res = await getUserNotifications(servers[ 0 ].url, userAccessToken, 0, 10, true) | 1252 | const res = await getUserNotifications(servers[0].url, userAccessToken, 0, 10, true) |
1253 | 1253 | ||
1254 | const notifications = res.body.data as UserNotification[] | 1254 | const notifications = res.body.data as UserNotification[] |
1255 | for (const notification of notifications) { | 1255 | for (const notification of notifications) { |
@@ -1258,9 +1258,9 @@ describe('Test users notifications', function () { | |||
1258 | }) | 1258 | }) |
1259 | 1259 | ||
1260 | it('Should mark as read all notifications', async function () { | 1260 | it('Should mark as read all notifications', async function () { |
1261 | await markAsReadAllNotifications(servers[ 0 ].url, userAccessToken) | 1261 | await markAsReadAllNotifications(servers[0].url, userAccessToken) |
1262 | 1262 | ||
1263 | const res = await getUserNotifications(servers[ 0 ].url, userAccessToken, 0, 10, true) | 1263 | const res = await getUserNotifications(servers[0].url, userAccessToken, 0, 10, true) |
1264 | 1264 | ||
1265 | expect(res.body.total).to.equal(0) | 1265 | expect(res.body.total).to.equal(0) |
1266 | expect(res.body.data).to.have.lengthOf(0) | 1266 | expect(res.body.data).to.have.lengthOf(0) |