]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/tests/shared/notifications.ts
Add job queue hooks
[github/Chocobozzz/PeerTube.git] / server / tests / shared / notifications.ts
index a62410880fedb721f02dd408d58f173a387987c7..ee15e2b098da2b2ac91ab4c59d06100173ca9400 100644 (file)
@@ -185,7 +185,7 @@ async function checkUserRegistered (options: CheckerBaseParams & {
       expect(notification).to.not.be.undefined
       expect(notification.type).to.equal(notificationType)
 
-      checkActor(notification.account)
+      checkActor(notification.account, { withAvatar: false })
       expect(notification.account.name).to.equal(username)
     } else {
       expect(notification).to.satisfy(n => n.type !== notificationType || n.account.name !== username)
@@ -253,7 +253,7 @@ async function checkNewInstanceFollower (options: CheckerBaseParams & {
       expect(notification).to.not.be.undefined
       expect(notification.type).to.equal(notificationType)
 
-      checkActor(notification.actorFollow.follower)
+      checkActor(notification.actorFollow.follower, { withAvatar: false })
       expect(notification.actorFollow.follower.name).to.equal('peertube')
       expect(notification.actorFollow.follower.host).to.equal(followerHost)
 
@@ -288,7 +288,8 @@ async function checkAutoInstanceFollowing (options: CheckerBaseParams & {
       expect(notification.type).to.equal(notificationType)
 
       const following = notification.actorFollow.following
-      checkActor(following)
+
+      checkActor(following, { withAvatar: false })
       expect(following.name).to.equal('peertube')
       expect(following.host).to.equal(followingHost)
 
@@ -701,6 +702,9 @@ async function prepareNotificationsTest (serversCount = 3, overrideConfigArg: an
   const userAccessToken = await servers[0].login.getAccessToken(user)
 
   await servers[0].notifications.updateMySettings({ token: userAccessToken, settings: getAllNotificationsSettings() })
+  await servers[0].users.updateMyAvatar({ token: userAccessToken, fixture: 'avatar.png' })
+  await servers[0].channels.updateImage({ channelName: 'user_1_channel', token: userAccessToken, fixture: 'avatar.png', type: 'avatar' })
+
   await servers[0].notifications.updateMySettings({ settings: getAllNotificationsSettings() })
 
   if (serversCount > 1) {
@@ -776,7 +780,7 @@ async function checkNotification (options: CheckerBaseParams & {
   const check = options.check || { web: true, mail: true }
 
   if (check.web) {
-    const notification = await server.notifications.getLatest({ token: token })
+    const notification = await server.notifications.getLatest({ token })
 
     if (notification || checkType !== 'absence') {
       notificationChecker(notification, checkType)
@@ -832,10 +836,18 @@ function checkVideo (video: any, videoName?: string, shortUUID?: string) {
   expect(video.id).to.be.a('number')
 }
 
-function checkActor (actor: any) {
+function checkActor (actor: any, options: { withAvatar?: boolean } = {}) {
+  const { withAvatar = true } = options
+
   expect(actor.displayName).to.be.a('string')
   expect(actor.displayName).to.not.be.empty
   expect(actor.host).to.not.be.undefined
+
+  if (withAvatar) {
+    expect(actor.avatars).to.be.an('array')
+    expect(actor.avatars).to.have.lengthOf(2)
+    expect(actor.avatars[0].path).to.exist.and.not.empty
+  }
 }
 
 function checkComment (comment: any, commentId: number, threadId: number) {