cleanupTests,
createMultipleServers,
doubleFollow,
+ makeGetRequest,
PeerTubeServer,
setAccessTokensToServers,
+ setDefaultAccountAvatar,
+ setDefaultChannelAvatar,
waitJobs,
webtorrentAdd
} from '@shared/server-commands'
description: 'super channel'
}
await servers[0].channels.create({ attributes: videoChannel })
+ await setDefaultChannelAvatar(servers[0], videoChannel.name)
+ await setDefaultAccountAvatar(servers)
+
const { data } = await servers[0].channels.list({ start: 0, count: 1 })
videoChannelId = data[0].id
}
await completeVideoCheck(server, video, checkAttributes)
publishedAt = video.publishedAt as string
+
+ expect(video.channel.avatars).to.have.lengthOf(2)
+ expect(video.account.avatars).to.have.lengthOf(2)
+
+ for (const image of [ ...video.channel.avatars, ...video.account.avatars ]) {
+ expect(image.createdAt).to.exist
+ expect(image.updatedAt).to.exist
+ expect(image.width).to.be.above(20).and.below(1000)
+ expect(image.path).to.exist
+
+ await makeGetRequest({
+ url: server.url,
+ path: image.path,
+ expectedStatus: HttpStatusCode.OK_200
+ })
+ }
}
})
},
{
resolution: 720,
- size: 788000
+ size: 750000
}
],
thumbnailfile: 'thumbnail',
it('Should view multiple videos on owned servers', async function () {
this.timeout(30000)
- await servers[2].videos.view({ id: localVideosServer3[0] })
+ await servers[2].views.simulateView({ id: localVideosServer3[0] })
await wait(1000)
- await servers[2].videos.view({ id: localVideosServer3[0] })
- await servers[2].videos.view({ id: localVideosServer3[1] })
+ await servers[2].views.simulateView({ id: localVideosServer3[0] })
+ await servers[2].views.simulateView({ id: localVideosServer3[1] })
await wait(1000)
- await servers[2].videos.view({ id: localVideosServer3[0] })
- await servers[2].videos.view({ id: localVideosServer3[0] })
+ await servers[2].views.simulateView({ id: localVideosServer3[0] })
+ await servers[2].views.simulateView({ id: localVideosServer3[0] })
await waitJobs(servers)
- // Wait the repeatable job
- await wait(6000)
+ for (const server of servers) {
+ await server.debug.sendCommand({ body: { command: 'process-video-views-buffer' } })
+ }
await waitJobs(servers)
this.timeout(45000)
const tasks: Promise<any>[] = []
- tasks.push(servers[0].videos.view({ id: remoteVideosServer1[0] }))
- tasks.push(servers[1].videos.view({ id: remoteVideosServer2[0] }))
- tasks.push(servers[1].videos.view({ id: remoteVideosServer2[0] }))
- tasks.push(servers[2].videos.view({ id: remoteVideosServer3[0] }))
- tasks.push(servers[2].videos.view({ id: remoteVideosServer3[1] }))
- tasks.push(servers[2].videos.view({ id: remoteVideosServer3[1] }))
- tasks.push(servers[2].videos.view({ id: remoteVideosServer3[1] }))
- tasks.push(servers[2].videos.view({ id: localVideosServer3[1] }))
- tasks.push(servers[2].videos.view({ id: localVideosServer3[1] }))
- tasks.push(servers[2].videos.view({ id: localVideosServer3[1] }))
+ tasks.push(servers[0].views.simulateView({ id: remoteVideosServer1[0] }))
+ tasks.push(servers[1].views.simulateView({ id: remoteVideosServer2[0] }))
+ tasks.push(servers[1].views.simulateView({ id: remoteVideosServer2[0] }))
+ tasks.push(servers[2].views.simulateView({ id: remoteVideosServer3[0] }))
+ tasks.push(servers[2].views.simulateView({ id: remoteVideosServer3[1] }))
+ tasks.push(servers[2].views.simulateView({ id: remoteVideosServer3[1] }))
+ tasks.push(servers[2].views.simulateView({ id: remoteVideosServer3[1] }))
+ tasks.push(servers[2].views.simulateView({ id: localVideosServer3[1] }))
+ tasks.push(servers[2].views.simulateView({ id: localVideosServer3[1] }))
+ tasks.push(servers[2].views.simulateView({ id: localVideosServer3[1] }))
await Promise.all(tasks)
await waitJobs(servers)
- // Wait the repeatable job
- await wait(16000)
+ for (const server of servers) {
+ await server.debug.sendCommand({ body: { command: 'process-video-views-buffer' } })
+ }
await waitJobs(servers)
for (const baseVideo of baseVideos) {
const sameVideo = data.find(video => video.name === baseVideo.name)
- expect(baseVideo.likes).to.equal(sameVideo.likes)
- expect(baseVideo.dislikes).to.equal(sameVideo.dislikes)
+ expect(baseVideo.likes).to.equal(sameVideo.likes, `Likes of ${sameVideo.uuid} do not correspond`)
+ expect(baseVideo.dislikes).to.equal(sameVideo.dislikes, `Dislikes of ${sameVideo.uuid} do not correspond`)
}
}
})