]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/tests/api/live/live.ts
Fix live replay duration glitch
[github/Chocobozzz/PeerTube.git] / server / tests / api / live / live.ts
index f99e7ad46649d3b95eeb5a0262ff40d8c1a66a40..23f8d2be1ccc1fea394e1d584479211050eaac88 100644 (file)
@@ -430,6 +430,8 @@ describe('Test live', function () {
         expect(video.files).to.have.lengthOf(0)
 
         const hlsPlaylist = video.streamingPlaylists.find(s => s.type === VideoStreamingPlaylistType.HLS)
+        await makeRawRequest(hlsPlaylist.playlistUrl, 200)
+        await makeRawRequest(hlsPlaylist.segmentsSha256Url, 200)
 
         expect(hlsPlaylist.files).to.have.lengthOf(resolutions.length)
 
@@ -579,22 +581,29 @@ describe('Test live', function () {
       }
 
       const command = await sendRTMPStreamInVideo(servers[0].url, servers[0].accessToken, liveVideoUUID)
-      await waitUntilLiveStarts(servers[0].url, servers[0].accessToken, liveVideoUUID)
+
+      for (const server of servers) {
+        await waitUntilLiveStarts(server.url, server.accessToken, liveVideoUUID)
+      }
+
       await waitJobs(servers)
 
       for (const stateChanges of [ localStateChanges, remoteStateChanges ]) {
-        expect(stateChanges).to.have.lengthOf(1)
-        expect(stateChanges[0]).to.equal(VideoState.PUBLISHED)
+        expect(stateChanges).to.have.length.at.least(1)
+        expect(stateChanges[stateChanges.length - 1]).to.equal(VideoState.PUBLISHED)
       }
 
       await stopFfmpeg(command)
-      await waitUntilLiveEnded(servers[0].url, servers[0].accessToken, liveVideoUUID)
+
+      for (const server of servers) {
+        await waitUntilLiveEnded(server.url, server.accessToken, liveVideoUUID)
+      }
 
       await waitJobs(servers)
 
       for (const stateChanges of [ localStateChanges, remoteStateChanges ]) {
-        expect(stateChanges).to.have.lengthOf(2)
-        expect(stateChanges[1]).to.equal(VideoState.LIVE_ENDED)
+        expect(stateChanges).to.have.length.at.least(2)
+        expect(stateChanges[stateChanges.length - 1]).to.equal(VideoState.LIVE_ENDED)
       }
     })