From b345a8047bfde1efa1fdbd249f25f663151265a8 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Fri, 17 May 2019 11:56:12 +0200 Subject: Add audio upload tests --- server/tests/api/videos/video-hls.ts | 41 ++++++++++++++++++++++++++---------- 1 file changed, 30 insertions(+), 11 deletions(-) (limited to 'server/tests/api/videos/video-hls.ts') diff --git a/server/tests/api/videos/video-hls.ts b/server/tests/api/videos/video-hls.ts index 504c50dee..eacd9ab79 100644 --- a/server/tests/api/videos/video-hls.ts +++ b/server/tests/api/videos/video-hls.ts @@ -21,12 +21,11 @@ import { import { VideoDetails } from '../../../../shared/models/videos' import { VideoStreamingPlaylistType } from '../../../../shared/models/videos/video-streaming-playlist.type' import { join } from 'path' +import { DEFAULT_AUDIO_RESOLUTION } from '../../../initializers/constants' const expect = chai.expect -async function checkHlsPlaylist (servers: ServerInfo[], videoUUID: string) { - const resolutions = [ 240, 360, 480, 720 ] - +async function checkHlsPlaylist (servers: ServerInfo[], videoUUID: string, resolutions = [ 240, 360, 480, 720 ]) { for (const server of servers) { const res = await getVideo(server.url, videoUUID) const videoDetails: VideoDetails = res.body @@ -41,9 +40,8 @@ async function checkHlsPlaylist (servers: ServerInfo[], videoUUID: string) { const masterPlaylist = res2.text - expect(masterPlaylist).to.contain('#EXT-X-STREAM-INF:BANDWIDTH=55472,RESOLUTION=640x360,FRAME-RATE=25') - for (const resolution of resolutions) { + expect(masterPlaylist).to.match(new RegExp('#EXT-X-STREAM-INF:BANDWIDTH=\\d+,RESOLUTION=\\d+x' + resolution + ',FRAME-RATE=\\d+')) expect(masterPlaylist).to.contain(`${resolution}.m3u8`) } } @@ -70,11 +68,21 @@ async function checkHlsPlaylist (servers: ServerInfo[], videoUUID: string) { describe('Test HLS videos', function () { let servers: ServerInfo[] = [] let videoUUID = '' + let videoAudioUUID = '' before(async function () { this.timeout(120000) - servers = await flushAndRunMultipleServers(2, { transcoding: { enabled: true, hls: { enabled: true } } }) + const configOverride = { + transcoding: { + enabled: true, + allow_audio_files: true, + hls: { + enabled: true + } + } + } + servers = await flushAndRunMultipleServers(2, configOverride) // Get the access tokens await setAccessTokensToServers(servers) @@ -86,16 +94,25 @@ describe('Test HLS videos', function () { it('Should upload a video and transcode it to HLS', async function () { this.timeout(120000) - { - const res = await uploadVideo(servers[ 0 ].url, servers[ 0 ].accessToken, { name: 'video 1', fixture: 'video_short.webm' }) - videoUUID = res.body.video.uuid - } + const res = await uploadVideo(servers[ 0 ].url, servers[ 0 ].accessToken, { name: 'video 1', fixture: 'video_short.webm' }) + videoUUID = res.body.video.uuid await waitJobs(servers) await checkHlsPlaylist(servers, videoUUID) }) + it('Should upload an audio file and transcode it to HLS', async function () { + this.timeout(120000) + + const res = await uploadVideo(servers[ 0 ].url, servers[ 0 ].accessToken, { name: 'video audio', fixture: 'sample.ogg' }) + videoAudioUUID = res.body.video.uuid + + await waitJobs(servers) + + await checkHlsPlaylist(servers, videoAudioUUID, [ DEFAULT_AUDIO_RESOLUTION ]) + }) + it('Should update the video', async function () { await updateVideo(servers[0].url, servers[0].accessToken, videoUUID, { name: 'video 1 updated' }) @@ -104,13 +121,15 @@ describe('Test HLS videos', function () { await checkHlsPlaylist(servers, videoUUID) }) - it('Should delete the video', async function () { + it('Should delete videos', async function () { await removeVideo(servers[0].url, servers[0].accessToken, videoUUID) + await removeVideo(servers[0].url, servers[0].accessToken, videoAudioUUID) await waitJobs(servers) for (const server of servers) { await getVideo(server.url, videoUUID, 404) + await getVideo(server.url, videoAudioUUID, 404) } }) -- cgit v1.2.3 From 80b8ad2a7084c206efb194ddfbea13df860f0c5f Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Fri, 17 May 2019 15:51:42 +0200 Subject: Update travis ffmpeg patch version --- server/tests/api/videos/video-hls.ts | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'server/tests/api/videos/video-hls.ts') diff --git a/server/tests/api/videos/video-hls.ts b/server/tests/api/videos/video-hls.ts index eacd9ab79..39178bb1a 100644 --- a/server/tests/api/videos/video-hls.ts +++ b/server/tests/api/videos/video-hls.ts @@ -114,6 +114,8 @@ describe('Test HLS videos', function () { }) it('Should update the video', async function () { + this.timeout(10000) + await updateVideo(servers[0].url, servers[0].accessToken, videoUUID, { name: 'video 1 updated' }) await waitJobs(servers) @@ -122,6 +124,8 @@ describe('Test HLS videos', function () { }) it('Should delete videos', async function () { + this.timeout(10000) + await removeVideo(servers[0].url, servers[0].accessToken, videoUUID) await removeVideo(servers[0].url, servers[0].accessToken, videoAudioUUID) -- cgit v1.2.3