X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;ds=sidebyside;f=server%2Ftests%2Fapi%2Fvideos%2Fmultiple-servers.ts;h=74c6b84623efb2eca0f7422eefac4dc6dcd91b15;hb=5d00a3d7aa4309f1da5ac7d6e3ed63181eb34952;hp=85d158d61aefe24c6755bbc3727be663e181a244;hpb=7b0956ec4f7753c864c4cea220e6f189327baa93;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/tests/api/videos/multiple-servers.ts b/server/tests/api/videos/multiple-servers.ts index 85d158d61..74c6b8462 100644 --- a/server/tests/api/videos/multiple-servers.ts +++ b/server/tests/api/videos/multiple-servers.ts @@ -8,13 +8,35 @@ import { VideoPrivacy } from '../../../../shared/models/videos' import { VideoComment, VideoCommentThreadTree } from '../../../../shared/models/videos/video-comment.model' import { - addVideoChannel, checkVideoFilesWereRemoved, completeVideoCheck, createUser, dateIsValid, doubleFollow, flushAndRunMultipleServers, - flushTests, getVideo, - getVideoChannelsList, getVideosList, killallServers, rateVideo, removeVideo, ServerInfo, setAccessTokensToServers, testImage, - updateVideo, uploadVideo, userLogin, viewVideo, wait, webtorrentAdd + addVideoChannel, + checkVideoFilesWereRemoved, + completeVideoCheck, + createUser, + dateIsValid, + doubleFollow, + flushAndRunMultipleServers, + flushTests, getLocalVideos, + getVideo, + getVideoChannelsList, + getVideosList, + killallServers, + rateVideo, + removeVideo, + ServerInfo, + setAccessTokensToServers, + testImage, + updateVideo, + uploadVideo, + userLogin, + viewVideo, + wait, + webtorrentAdd } from '../../utils' import { - addVideoCommentReply, addVideoCommentThread, deleteVideoComment, getVideoCommentThreads, + addVideoCommentReply, + addVideoCommentThread, + deleteVideoComment, + getVideoCommentThreads, getVideoThreadComments } from '../../utils/videos/video-comments' @@ -70,6 +92,7 @@ describe('Test multiple servers', function () { language: 9, nsfw: true, description: 'my super description for server 1', + support: 'my super support text for server 1', tags: [ 'tag1p1', 'tag2p1' ], channelId: videoChannelId, fixture: 'video_short1.webm' @@ -88,8 +111,11 @@ describe('Test multiple servers', function () { language: 9, nsfw: true, description: 'my super description for server 1', - host: 'localhost:9001', - account: 'root', + support: 'my super support text for server 1', + account: { + name: 'root', + host: 'localhost:9001' + }, isLocal, duration: 10, tags: [ 'tag1p1', 'tag2p1' ], @@ -136,6 +162,7 @@ describe('Test multiple servers', function () { language: 11, nsfw: true, description: 'my super description for server 2', + support: 'my super support text for server 2', tags: [ 'tag1p2', 'tag2p2', 'tag3p2' ], fixture: 'video_short2.webm', thumbnailfile: 'thumbnail.jpg', @@ -156,8 +183,11 @@ describe('Test multiple servers', function () { language: 11, nsfw: true, description: 'my super description for server 2', - host: 'localhost:9002', - account: 'user1', + support: 'my super support text for server 2', + account: { + name: 'user1', + host: 'localhost:9002' + }, isLocal, commentsEnabled: true, duration: 5, @@ -211,6 +241,7 @@ describe('Test multiple servers', function () { language: 11, nsfw: true, description: 'my super description for server 3', + support: 'my super support text for server 3', tags: [ 'tag1p3' ], fixture: 'video_short3.webm' } @@ -223,6 +254,7 @@ describe('Test multiple servers', function () { language: 12, nsfw: false, description: 'my super description for server 3-2', + support: 'my super support text for server 3-2', tags: [ 'tag2p3', 'tag3p3', 'tag4p3' ], fixture: 'video_short.webm' } @@ -257,8 +289,11 @@ describe('Test multiple servers', function () { language: 11, nsfw: true, description: 'my super description for server 3', - host: 'localhost:9003', - account: 'root', + support: 'my super support text for server 3', + account: { + name: 'root', + host: 'localhost:9003' + }, isLocal, duration: 5, commentsEnabled: true, @@ -286,8 +321,11 @@ describe('Test multiple servers', function () { language: 12, nsfw: false, description: 'my super description for server 3-2', - host: 'localhost:9003', - account: 'root', + support: 'my super support text for server 3-2', + account: { + name: 'root', + host: 'localhost:9003' + }, commentsEnabled: true, isLocal, duration: 5, @@ -311,6 +349,36 @@ describe('Test multiple servers', function () { }) }) + describe('It should list local videos', function () { + it('Should list only local videos on server 1', async function () { + const { body } = await getLocalVideos(servers[0].url) + + expect(body.total).to.equal(1) + expect(body.data).to.be.an('array') + expect(body.data.length).to.equal(1) + expect(body.data[0].name).to.equal('my super name for server 1') + }) + + it('Should list only local videos on server 2', async function () { + const { body } = await getLocalVideos(servers[1].url) + + expect(body.total).to.equal(1) + expect(body.data).to.be.an('array') + expect(body.data.length).to.equal(1) + expect(body.data[0].name).to.equal('my super name for server 2') + }) + + it('Should list only local videos on server 3', async function () { + const { body } = await getLocalVideos(servers[2].url) + + expect(body.total).to.equal(2) + expect(body.data).to.be.an('array') + expect(body.data.length).to.equal(2) + expect(body.data[0].name).to.equal('my super name for server 3') + expect(body.data[1].name).to.equal('my super name for server 3-2') + }) + }) + describe('Should seed the uploaded video', function () { it('Should add the file 1 by asking server 3', async function () { this.timeout(10000) @@ -384,7 +452,7 @@ describe('Test multiple servers', function () { const res2 = await getVideo(servers[0].url, video.id) const videoDetails = res2.body - const file = videoDetails.files.find(f => f.resolution === 360) + const file = videoDetails.files.find(f => f.resolution.id === 360) expect(file).not.to.be.undefined const torrent = await webtorrentAdd(file.magnetUri) @@ -413,15 +481,22 @@ describe('Test multiple servers', function () { }) it('Should view multiple videos on owned servers', async function () { - this.timeout(10000) + this.timeout(15000) const tasks: Promise[] = [] - tasks.push(viewVideo(servers[2].url, localVideosServer3[0])) - tasks.push(viewVideo(servers[2].url, localVideosServer3[0])) - tasks.push(viewVideo(servers[2].url, localVideosServer3[0])) - tasks.push(viewVideo(servers[2].url, localVideosServer3[1])) + await viewVideo(servers[2].url, localVideosServer3[0]) + await viewVideo(servers[2].url, localVideosServer3[0]) + await viewVideo(servers[2].url, localVideosServer3[0]) + await viewVideo(servers[2].url, localVideosServer3[1]) await Promise.all(tasks) + await wait(1500) + + await viewVideo(servers[2].url, localVideosServer3[0]) + + await wait(1500) + + await viewVideo(servers[2].url, localVideosServer3[0]) await wait(5000) @@ -525,6 +600,7 @@ describe('Test multiple servers', function () { language: 13, nsfw: true, description: 'my super description updated', + support: 'my super support text updated', tags: [ 'tag_up_1', 'tag_up_2' ], thumbnailfile: 'thumbnail.jpg', previewfile: 'preview.jpg' @@ -553,8 +629,11 @@ describe('Test multiple servers', function () { language: 13, nsfw: true, description: 'my super description updated', - host: 'localhost:9003', - account: 'root', + support: 'my super support text updated', + account: { + name: 'root', + host: 'localhost:9003' + }, isLocal, duration: 5, commentsEnabled: true, @@ -626,12 +705,14 @@ describe('Test multiple servers', function () { expect(baseVideo.name).to.equal(video.name) expect(baseVideo.uuid).to.equal(video.uuid) - expect(baseVideo.category).to.equal(video.category) - expect(baseVideo.language).to.equal(video.language) - expect(baseVideo.licence).to.equal(video.licence) - expect(baseVideo.category).to.equal(video.category) + expect(baseVideo.category.id).to.equal(video.category.id) + expect(baseVideo.language.id).to.equal(video.language.id) + expect(baseVideo.licence.id).to.equal(video.licence.id) expect(baseVideo.nsfw).to.equal(video.nsfw) - expect(baseVideo.accountName).to.equal(video.accountName) + expect(baseVideo.account.name).to.equal(video.account.name) + expect(baseVideo.account.displayName).to.equal(video.account.displayName) + expect(baseVideo.account.url).to.equal(video.account.url) + expect(baseVideo.account.host).to.equal(video.account.host) expect(baseVideo.tags).to.deep.equal(video.tags) } }) @@ -841,8 +922,11 @@ describe('Test multiple servers', function () { language: null, nsfw: false, description: null, - host: 'localhost:9002', - account: 'root', + support: null, + account: { + name: 'root', + host: 'localhost:9002' + }, isLocal, duration: 5, commentsEnabled: true,