Fix server redundancy tests

This commit is contained in:
Chocobozzz 2018-11-15 10:07:44 +01:00
parent 2fbe7f1933
commit 742ddee1f1
No known key found for this signature in database
GPG Key ID: 583A612D890159BE
3 changed files with 17 additions and 11 deletions

View File

@ -185,11 +185,12 @@ export class VideosRedundancyScheduler extends AbstractScheduler {
}
private async isTooHeavy (redundancy: VideosRedundancy, filesToDuplicate: VideoFileModel[]) {
const maxSize = redundancy.size - this.getTotalFileSizes(filesToDuplicate)
const maxSize = redundancy.size
const totalDuplicated = await VideoRedundancyModel.getTotalDuplicated(redundancy.strategy)
const totalWillDuplicate = totalDuplicated + this.getTotalFileSizes(filesToDuplicate)
return totalDuplicated > maxSize
return totalWillDuplicate > maxSize
}
private buildNewExpiration (expiresAfterMs: number) {

View File

@ -293,6 +293,11 @@ export class VideoRedundancyModel extends Model<VideoRedundancyModel> {
}
return VideoFileModel.sum('size', options as any) // FIXME: typings
.then(v => {
if (!v || isNaN(v)) return 0
return v
})
}
static async listLocalExpired () {

View File

@ -54,7 +54,7 @@ async function runServers (strategy: VideoRedundancyStrategy, additionalParams:
immutableAssign({
min_lifetime: '1 hour',
strategy: strategy,
size: '100KB'
size: '200KB'
}, additionalParams)
]
}
@ -111,8 +111,8 @@ async function checkStatsWith2Webseed (strategy: VideoRedundancyStrategy) {
const stat = data.videosRedundancy[0]
expect(stat.strategy).to.equal(strategy)
expect(stat.totalSize).to.equal(102400)
expect(stat.totalUsed).to.be.at.least(1).and.below(102401)
expect(stat.totalSize).to.equal(204800)
expect(stat.totalUsed).to.be.at.least(1).and.below(204800)
expect(stat.totalVideoFiles).to.equal(4)
expect(stat.totalVideos).to.equal(1)
}
@ -125,7 +125,7 @@ async function checkStatsWith1Webseed (strategy: VideoRedundancyStrategy) {
const stat = data.videosRedundancy[0]
expect(stat.strategy).to.equal(strategy)
expect(stat.totalSize).to.equal(102400)
expect(stat.totalSize).to.equal(204800)
expect(stat.totalUsed).to.equal(0)
expect(stat.totalVideoFiles).to.equal(0)
expect(stat.totalVideos).to.equal(0)
@ -223,7 +223,7 @@ describe('Test videos redundancy', function () {
return enableRedundancyOnServer1()
})
it('Should have 2 webseed on the first video', async function () {
it('Should have 2 webseeds on the first video', async function () {
this.timeout(40000)
await waitJobs(servers)
@ -270,7 +270,7 @@ describe('Test videos redundancy', function () {
return enableRedundancyOnServer1()
})
it('Should have 2 webseed on the first video', async function () {
it('Should have 2 webseeds on the first video', async function () {
this.timeout(40000)
await waitJobs(servers)
@ -338,7 +338,7 @@ describe('Test videos redundancy', function () {
await waitJobs(servers)
})
it('Should have 2 webseed on the first video', async function () {
it('Should have 2 webseeds on the first video', async function () {
this.timeout(40000)
await waitJobs(servers)
@ -399,7 +399,7 @@ describe('Test videos redundancy', function () {
await enableRedundancyOnServer1()
})
it('Should still have 2 webseeds after 10 seconds', async function () {
it('Should still have 2 webseedss after 10 seconds', async function () {
this.timeout(40000)
await wait(10000)
@ -451,7 +451,7 @@ describe('Test videos redundancy', function () {
video2Server2UUID = res.body.video.uuid
})
it('Should cache video 2 webseed on the first video', async function () {
it('Should cache video 2 webseeds on the first video', async function () {
this.timeout(120000)
await waitJobs(servers)