diff options
Diffstat (limited to 'server/tests/api/videos/video-transcoder.ts')
-rw-r--r-- | server/tests/api/videos/video-transcoder.ts | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/server/tests/api/videos/video-transcoder.ts b/server/tests/api/videos/video-transcoder.ts index 55eb76b3b..3e73ccbfa 100644 --- a/server/tests/api/videos/video-transcoder.ts +++ b/server/tests/api/videos/video-transcoder.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' |
@@ -56,19 +56,19 @@ describe('Test video transcoding', function () { | |||
56 | 56 | ||
57 | for (const server of servers) { | 57 | for (const server of servers) { |
58 | const res = await getVideosList(server.url) | 58 | const res = await getVideosList(server.url) |
59 | const video = res.body.data[ 0 ] | 59 | const video = res.body.data[0] |
60 | 60 | ||
61 | const res2 = await getVideo(server.url, video.id) | 61 | const res2 = await getVideo(server.url, video.id) |
62 | const videoDetails = res2.body | 62 | const videoDetails = res2.body |
63 | expect(videoDetails.files).to.have.lengthOf(1) | 63 | expect(videoDetails.files).to.have.lengthOf(1) |
64 | 64 | ||
65 | const magnetUri = videoDetails.files[ 0 ].magnetUri | 65 | const magnetUri = videoDetails.files[0].magnetUri |
66 | expect(magnetUri).to.match(/\.webm/) | 66 | expect(magnetUri).to.match(/\.webm/) |
67 | 67 | ||
68 | const torrent = await webtorrentAdd(magnetUri, true) | 68 | const torrent = await webtorrentAdd(magnetUri, true) |
69 | expect(torrent.files).to.be.an('array') | 69 | expect(torrent.files).to.be.an('array') |
70 | expect(torrent.files.length).to.equal(1) | 70 | expect(torrent.files.length).to.equal(1) |
71 | expect(torrent.files[ 0 ].path).match(/\.webm$/) | 71 | expect(torrent.files[0].path).match(/\.webm$/) |
72 | } | 72 | } |
73 | }) | 73 | }) |
74 | 74 | ||
@@ -93,13 +93,13 @@ describe('Test video transcoding', function () { | |||
93 | 93 | ||
94 | expect(videoDetails.files).to.have.lengthOf(4) | 94 | expect(videoDetails.files).to.have.lengthOf(4) |
95 | 95 | ||
96 | const magnetUri = videoDetails.files[ 0 ].magnetUri | 96 | const magnetUri = videoDetails.files[0].magnetUri |
97 | expect(magnetUri).to.match(/\.mp4/) | 97 | expect(magnetUri).to.match(/\.mp4/) |
98 | 98 | ||
99 | const torrent = await webtorrentAdd(magnetUri, true) | 99 | const torrent = await webtorrentAdd(magnetUri, true) |
100 | expect(torrent.files).to.be.an('array') | 100 | expect(torrent.files).to.be.an('array') |
101 | expect(torrent.files.length).to.equal(1) | 101 | expect(torrent.files.length).to.equal(1) |
102 | expect(torrent.files[ 0 ].path).match(/\.mp4$/) | 102 | expect(torrent.files[0].path).match(/\.mp4$/) |
103 | } | 103 | } |
104 | }) | 104 | }) |
105 | 105 | ||
@@ -127,8 +127,8 @@ describe('Test video transcoding', function () { | |||
127 | const probe = await audio.get(path) | 127 | const probe = await audio.get(path) |
128 | 128 | ||
129 | if (probe.audioStream) { | 129 | if (probe.audioStream) { |
130 | expect(probe.audioStream[ 'codec_name' ]).to.be.equal('aac') | 130 | expect(probe.audioStream['codec_name']).to.be.equal('aac') |
131 | expect(probe.audioStream[ 'bit_rate' ]).to.be.at.most(384 * 8000) | 131 | expect(probe.audioStream['bit_rate']).to.be.at.most(384 * 8000) |
132 | } else { | 132 | } else { |
133 | this.fail('Could not retrieve the audio stream on ' + probe.absolutePath) | 133 | this.fail('Could not retrieve the audio stream on ' + probe.absolutePath) |
134 | } | 134 | } |
@@ -212,10 +212,10 @@ describe('Test video transcoding', function () { | |||
212 | const videoDetails: VideoDetails = res2.body | 212 | const videoDetails: VideoDetails = res2.body |
213 | 213 | ||
214 | expect(videoDetails.files).to.have.lengthOf(4) | 214 | expect(videoDetails.files).to.have.lengthOf(4) |
215 | expect(videoDetails.files[ 0 ].fps).to.be.above(58).and.below(62) | 215 | expect(videoDetails.files[0].fps).to.be.above(58).and.below(62) |
216 | expect(videoDetails.files[ 1 ].fps).to.be.below(31) | 216 | expect(videoDetails.files[1].fps).to.be.below(31) |
217 | expect(videoDetails.files[ 2 ].fps).to.be.below(31) | 217 | expect(videoDetails.files[2].fps).to.be.below(31) |
218 | expect(videoDetails.files[ 3 ].fps).to.be.below(31) | 218 | expect(videoDetails.files[3].fps).to.be.below(31) |
219 | 219 | ||
220 | for (const resolution of [ '240', '360', '480' ]) { | 220 | for (const resolution of [ '240', '360', '480' ]) { |
221 | const path = join(root(), 'test' + servers[1].internalServerNumber, 'videos', video.uuid + '-' + resolution + '.mp4') | 221 | const path = join(root(), 'test' + servers[1].internalServerNumber, 'videos', video.uuid + '-' + resolution + '.mp4') |
@@ -241,11 +241,11 @@ describe('Test video transcoding', function () { | |||
241 | fixture: 'video_short1.webm', | 241 | fixture: 'video_short1.webm', |
242 | waitTranscoding: true | 242 | waitTranscoding: true |
243 | } | 243 | } |
244 | const resVideo = await uploadVideo(servers[ 1 ].url, servers[ 1 ].accessToken, videoAttributes) | 244 | const resVideo = await uploadVideo(servers[1].url, servers[1].accessToken, videoAttributes) |
245 | const videoId = resVideo.body.video.uuid | 245 | const videoId = resVideo.body.video.uuid |
246 | 246 | ||
247 | // Should be in transcode state | 247 | // Should be in transcode state |
248 | const { body } = await getVideo(servers[ 1 ].url, videoId) | 248 | const { body } = await getVideo(servers[1].url, videoId) |
249 | expect(body.name).to.equal('waiting video') | 249 | expect(body.name).to.equal('waiting video') |
250 | expect(body.state.id).to.equal(VideoState.TO_TRANSCODE) | 250 | expect(body.state.id).to.equal(VideoState.TO_TRANSCODE) |
251 | expect(body.state.label).to.equal('To transcode') | 251 | expect(body.state.label).to.equal('To transcode') |
@@ -311,7 +311,7 @@ describe('Test video transcoding', function () { | |||
311 | 311 | ||
312 | const video = res.body.data.find(v => v.name === videoAttributes.name) | 312 | const video = res.body.data.find(v => v.name === videoAttributes.name) |
313 | 313 | ||
314 | for (const resolution of ['240', '360', '480', '720', '1080']) { | 314 | for (const resolution of [ '240', '360', '480', '720', '1080' ]) { |
315 | const path = join(root(), 'test' + servers[1].internalServerNumber, 'videos', video.uuid + '-' + resolution + '.mp4') | 315 | const path = join(root(), 'test' + servers[1].internalServerNumber, 'videos', video.uuid + '-' + resolution + '.mp4') |
316 | const bitrate = await getVideoFileBitrate(path) | 316 | const bitrate = await getVideoFileBitrate(path) |
317 | const fps = await getVideoFileFPS(path) | 317 | const fps = await getVideoFileFPS(path) |
@@ -341,7 +341,7 @@ describe('Test video transcoding', function () { | |||
341 | fixture | 341 | fixture |
342 | } | 342 | } |
343 | 343 | ||
344 | await uploadVideo(servers[ 1 ].url, servers[ 1 ].accessToken, videoAttributes) | 344 | await uploadVideo(servers[1].url, servers[1].accessToken, videoAttributes) |
345 | 345 | ||
346 | await waitJobs(servers) | 346 | await waitJobs(servers) |
347 | 347 | ||
@@ -354,7 +354,7 @@ describe('Test video transcoding', function () { | |||
354 | 354 | ||
355 | expect(videoDetails.files).to.have.lengthOf(4) | 355 | expect(videoDetails.files).to.have.lengthOf(4) |
356 | 356 | ||
357 | const magnetUri = videoDetails.files[ 0 ].magnetUri | 357 | const magnetUri = videoDetails.files[0].magnetUri |
358 | expect(magnetUri).to.contain('.mp4') | 358 | expect(magnetUri).to.contain('.mp4') |
359 | } | 359 | } |
360 | } | 360 | } |
@@ -371,7 +371,7 @@ describe('Test video transcoding', function () { | |||
371 | this.timeout(60000) | 371 | this.timeout(60000) |
372 | 372 | ||
373 | const videoAttributesArg = { name: 'audio_with_preview', previewfile: 'preview.jpg', fixture: 'sample.ogg' } | 373 | const videoAttributesArg = { name: 'audio_with_preview', previewfile: 'preview.jpg', fixture: 'sample.ogg' } |
374 | await uploadVideo(servers[ 1 ].url, servers[ 1 ].accessToken, videoAttributesArg) | 374 | await uploadVideo(servers[1].url, servers[1].accessToken, videoAttributesArg) |
375 | 375 | ||
376 | await waitJobs(servers) | 376 | await waitJobs(servers) |
377 | 377 | ||
@@ -387,7 +387,7 @@ describe('Test video transcoding', function () { | |||
387 | await makeGetRequest({ url: server.url, path: videoDetails.thumbnailPath, statusCodeExpected: 200 }) | 387 | await makeGetRequest({ url: server.url, path: videoDetails.thumbnailPath, statusCodeExpected: 200 }) |
388 | await makeGetRequest({ url: server.url, path: videoDetails.previewPath, statusCodeExpected: 200 }) | 388 | await makeGetRequest({ url: server.url, path: videoDetails.previewPath, statusCodeExpected: 200 }) |
389 | 389 | ||
390 | const magnetUri = videoDetails.files[ 0 ].magnetUri | 390 | const magnetUri = videoDetails.files[0].magnetUri |
391 | expect(magnetUri).to.contain('.mp4') | 391 | expect(magnetUri).to.contain('.mp4') |
392 | } | 392 | } |
393 | }) | 393 | }) |
@@ -396,7 +396,7 @@ describe('Test video transcoding', function () { | |||
396 | this.timeout(60000) | 396 | this.timeout(60000) |
397 | 397 | ||
398 | const videoAttributesArg = { name: 'audio_without_preview', fixture: 'sample.ogg' } | 398 | const videoAttributesArg = { name: 'audio_without_preview', fixture: 'sample.ogg' } |
399 | await uploadVideo(servers[ 1 ].url, servers[ 1 ].accessToken, videoAttributesArg) | 399 | await uploadVideo(servers[1].url, servers[1].accessToken, videoAttributesArg) |
400 | 400 | ||
401 | await waitJobs(servers) | 401 | await waitJobs(servers) |
402 | 402 | ||
@@ -412,7 +412,7 @@ describe('Test video transcoding', function () { | |||
412 | await makeGetRequest({ url: server.url, path: videoDetails.thumbnailPath, statusCodeExpected: 200 }) | 412 | await makeGetRequest({ url: server.url, path: videoDetails.thumbnailPath, statusCodeExpected: 200 }) |
413 | await makeGetRequest({ url: server.url, path: videoDetails.previewPath, statusCodeExpected: 200 }) | 413 | await makeGetRequest({ url: server.url, path: videoDetails.previewPath, statusCodeExpected: 200 }) |
414 | 414 | ||
415 | const magnetUri = videoDetails.files[ 0 ].magnetUri | 415 | const magnetUri = videoDetails.files[0].magnetUri |
416 | expect(magnetUri).to.contain('.mp4') | 416 | expect(magnetUri).to.contain('.mp4') |
417 | } | 417 | } |
418 | }) | 418 | }) |
@@ -445,13 +445,13 @@ describe('Test video transcoding', function () { | |||
445 | const video = res.body.data.find(v => v.name === videoAttributes.name) | 445 | const video = res.body.data.find(v => v.name === videoAttributes.name) |
446 | 446 | ||
447 | { | 447 | { |
448 | const path = join(root(), 'test' + servers[ 1 ].internalServerNumber, 'videos', video.uuid + '-240.mp4') | 448 | const path = join(root(), 'test' + servers[1].internalServerNumber, 'videos', video.uuid + '-240.mp4') |
449 | const fps = await getVideoFileFPS(path) | 449 | const fps = await getVideoFileFPS(path) |
450 | expect(fps).to.be.equal(25) | 450 | expect(fps).to.be.equal(25) |
451 | } | 451 | } |
452 | 452 | ||
453 | { | 453 | { |
454 | const path = join(root(), 'test' + servers[ 1 ].internalServerNumber, 'videos', video.uuid + '-720.mp4') | 454 | const path = join(root(), 'test' + servers[1].internalServerNumber, 'videos', video.uuid + '-720.mp4') |
455 | const fps = await getVideoFileFPS(path) | 455 | const fps = await getVideoFileFPS(path) |
456 | expect(fps).to.be.equal(59) | 456 | expect(fps).to.be.equal(59) |
457 | } | 457 | } |