2021-07-13 02:43:59 -05:00
|
|
|
/* eslint-disable @typescript-eslint/no-unused-expressions,@typescript-eslint/require-await */
|
|
|
|
|
|
|
|
import { expect } from 'chai'
|
|
|
|
import { pathExists, readdir } from 'fs-extra'
|
2021-12-17 04:58:15 -06:00
|
|
|
import { PeerTubeServer } from '@shared/server-commands'
|
2021-07-13 02:43:59 -05:00
|
|
|
|
2021-07-16 02:47:51 -05:00
|
|
|
async function checkTmpIsEmpty (server: PeerTubeServer) {
|
2021-07-13 02:43:59 -05:00
|
|
|
await checkDirectoryIsEmpty(server, 'tmp', [ 'plugins-global.css', 'hls', 'resumable-uploads' ])
|
|
|
|
|
2022-10-04 03:53:00 -05:00
|
|
|
if (await pathExists(server.getDirectoryPath('tmp/hls'))) {
|
2021-07-13 02:43:59 -05:00
|
|
|
await checkDirectoryIsEmpty(server, 'tmp/hls')
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2021-07-16 02:47:51 -05:00
|
|
|
async function checkDirectoryIsEmpty (server: PeerTubeServer, directory: string, exceptions: string[] = []) {
|
2022-10-04 03:53:00 -05:00
|
|
|
const directoryPath = server.getDirectoryPath(directory)
|
2021-07-13 02:43:59 -05:00
|
|
|
|
|
|
|
const directoryExists = await pathExists(directoryPath)
|
|
|
|
expect(directoryExists).to.be.true
|
|
|
|
|
|
|
|
const files = await readdir(directoryPath)
|
|
|
|
const filtered = files.filter(f => exceptions.includes(f) === false)
|
|
|
|
|
|
|
|
expect(filtered).to.have.lengthOf(0)
|
|
|
|
}
|
|
|
|
|
|
|
|
export {
|
|
|
|
checkTmpIsEmpty,
|
|
|
|
checkDirectoryIsEmpty
|
|
|
|
}
|