From d78b51aa4ed74bd2e6598b771fcff6391d7d9a3e Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Wed, 10 Nov 2021 14:25:33 +0100 Subject: Fix tests --- server/tests/api/videos/multiple-servers.ts | 13 +++++++++---- server/tests/api/videos/video-transcoder.ts | 12 +++++++++--- 2 files changed, 18 insertions(+), 7 deletions(-) (limited to 'server/tests/api') diff --git a/server/tests/api/videos/multiple-servers.ts b/server/tests/api/videos/multiple-servers.ts index 9c255c1c5..470bee45b 100644 --- a/server/tests/api/videos/multiple-servers.ts +++ b/server/tests/api/videos/multiple-servers.ts @@ -591,7 +591,9 @@ describe('Test multiple servers', function () { }) describe('Should manipulate these videos', function () { - it('Should update the video 3 by asking server 3', async function () { + let updatedAtMin: Date + + it('Should update video 3', async function () { this.timeout(10000) const attributes = { @@ -608,6 +610,7 @@ describe('Test multiple servers', function () { previewfile: 'preview.jpg' } + updatedAtMin = new Date() await servers[2].videos.update({ id: toRemove[0].id, attributes }) await waitJobs(servers) @@ -622,6 +625,8 @@ describe('Test multiple servers', function () { const videoUpdated = data.find(video => video.name === 'my super video updated') expect(!!videoUpdated).to.be.true + expect(new Date(videoUpdated.updatedAt)).to.be.greaterThan(updatedAtMin) + const isLocal = server.url === 'http://localhost:' + servers[2].port const checkAttributes = { name: 'my super video updated', @@ -1024,15 +1029,15 @@ describe('Test multiple servers', function () { files: [ { resolution: 720, - size: 59000 + size: 61000 }, { resolution: 480, - size: 34000 + size: 40000 }, { resolution: 360, - size: 31000 + size: 32000 }, { resolution: 240, diff --git a/server/tests/api/videos/video-transcoder.ts b/server/tests/api/videos/video-transcoder.ts index b3226dbf7..7ed55b8e8 100644 --- a/server/tests/api/videos/video-transcoder.ts +++ b/server/tests/api/videos/video-transcoder.ts @@ -3,7 +3,7 @@ import 'mocha' import * as chai from 'chai' import { omit } from 'lodash' -import { getMaxBitrate } from '@shared/core-utils' +import { getMaxBitrate, getMinLimitBitrate } from '@shared/core-utils' import { buildAbsoluteFixturePath, cleanupTests, @@ -583,7 +583,7 @@ describe('Test video transcoding', function () { } }) - it('Should not transcode to an higher bitrate than the original file', async function () { + it('Should not transcode to an higher bitrate than the original file but above our low limit', async function () { this.timeout(160_000) const newConfig = { @@ -622,7 +622,13 @@ describe('Test video transcoding', function () { const path = servers[1].servers.buildWebTorrentFilePath(file.fileUrl) const bitrate = await getVideoFileBitrate(path) - expect(bitrate, `${path} not below ${60_000}`).to.be.below(60_000) + + const inputBitrate = 60_000 + const limit = getMinLimitBitrate({ fps: 10, ratio: 1, resolution: r }) + let belowValue = Math.max(inputBitrate, limit) + belowValue += belowValue * 0.20 // Apply 20% margin because bitrate control is not very precise + + expect(bitrate, `${path} not below ${limit}`).to.be.below(belowValue) } }) }) -- cgit v1.2.3