diff --git a/test/integration/Quota.test.ts b/test/integration/Quota.test.ts index 66ebaf55a..6f575e9d5 100644 --- a/test/integration/Quota.test.ts +++ b/test/integration/Quota.test.ts @@ -1,9 +1,8 @@ -import { promises as fsPromises } from 'fs'; import type { Stats } from 'fs'; import fetch from 'cross-fetch'; import type { Response } from 'cross-fetch'; -import { ensureDir, pathExists } from 'fs-extra'; -import { joinFilePath, joinUrl } from '../../src'; +import { ensureDir, pathExists, stat } from 'fs-extra'; +import { joinUrl } from '../../src'; import type { App } from '../../src'; import { getPort } from '../util/Util'; import { getDefaultVariables, getTestConfigPath, getTestFolder, instantiateFromConfig, removeFolder } from './Config'; @@ -45,23 +44,6 @@ async function registerTestPods(baseUrl: string, pods: string[]): Promise } } -/* We just want a container with the correct metadata, everything else can be removed */ -async function clearInitialFiles(rootFilePath: string, pods: string[]): Promise { - for (const pod of pods) { - const fileList = await fsPromises.readdir(joinFilePath(rootFilePath, pod)); - for (const file of fileList) { - if (file !== '.meta') { - const path = joinFilePath(rootFilePath, pod, file); - if ((await fsPromises.stat(path)).isDirectory()) { - await fsPromises.rm(path, { recursive: true }); - } else { - await fsPromises.unlink(path); - } - } - } - } -} - describe('A quota server', (): void => { // The allowed quota depends on what filesystem/OS you are using. // For example: an empty folder is reported as @@ -74,7 +56,7 @@ describe('A quota server', (): void => { // We want to use an empty folder as on APFS/Mac folder sizes vary a lot const tempFolder = getTestFolder('quota-temp'); await ensureDir(tempFolder); - folderSizeTest = await fsPromises.stat(tempFolder); + folderSizeTest = await stat(tempFolder); await removeFolder(tempFolder); }); const podName1 = 'arthur'; @@ -108,7 +90,6 @@ describe('A quota server', (): void => { // Initialize 2 pods await registerTestPods(baseUrl, [ podName1, podName2 ]); - await clearInitialFiles(rootFilePath, [ podName1, podName2 ]); }); afterAll(async(): Promise => { @@ -194,7 +175,6 @@ describe('A quota server', (): void => { // Initialize 2 pods await registerTestPods(baseUrl, [ podName1, podName2 ]); - await clearInitialFiles(rootFilePath, [ podName1, podName2 ]); }); afterAll(async(): Promise => { diff --git a/test/integration/config/quota-global.json b/test/integration/config/quota-global.json index 604fe1b0a..a0a4c0218 100644 --- a/test/integration/config/quota-global.json +++ b/test/integration/config/quota-global.json @@ -54,6 +54,15 @@ "@type": "FileSizeReporter", "ignoreFolders": [ "^/\\.internal$" ] }, + { + "comment": "Use an empty pod for quota tests", + "@type": "Override", + "overrideInstance": { "@id": "urn:solid-server:default:PodResourcesGenerator" }, + "overrideParameters": { + "@type": "StaticFolderGenerator", + "templateFolder": "@css:templates/root/empty" + } + }, { "@id": "urn:solid-server:test:Instances", "@type": "RecordObject", diff --git a/test/integration/config/quota-pod.json b/test/integration/config/quota-pod.json index 6488dffa3..6e8e3fc28 100644 --- a/test/integration/config/quota-pod.json +++ b/test/integration/config/quota-pod.json @@ -49,6 +49,15 @@ }, "limit_unit": "bytes" }, + { + "comment": "Use an empty pod for quota tests", + "@type": "Override", + "overrideInstance": { "@id": "urn:solid-server:default:PodResourcesGenerator" }, + "overrideParameters": { + "@type": "StaticFolderGenerator", + "templateFolder": "@css:templates/root/empty" + } + }, { "@id": "urn:solid-server:test:Instances", "@type": "RecordObject",