Improve file system unit tests

This commit is contained in:
Angela P Wen 2022-08-11 15:09:44 +02:00
parent 4e121c0ef5
commit 6fdaff6eb6
3 changed files with 37 additions and 36 deletions

32
lib/util.test.js generated
View file

@ -318,32 +318,34 @@ for (const [version, githubVersion, shouldReportWarning,] of CHECK_ACTION_VERSIO
});
}
(0, ava_1.default)("doesDirectoryExist", async (t) => {
const topLevelFile = "top-level-test-file.txt";
fs.writeFileSync(topLevelFile, "");
// Returns false if file
t.false(util.doesDirectoryExist(topLevelFile));
// Returns false if no file of this type exists
t.false(util.doesDirectoryExist("non-existent-file.txt"));
// Returns true if directory
await util.withTmpDir(async (tmpDir) => {
const topLevelFile = "top-level-test-file.txt";
fs.writeFileSync(topLevelFile, "");
fs.writeFileSync(`${tmpDir}/nested-test-file.txt`, "");
// Returns true if directory
t.true(util.doesDirectoryExist(tmpDir));
// Returns false if file
t.false(util.doesDirectoryExist(topLevelFile));
// Returns false if no file of this type exists
t.false(util.doesDirectoryExist("non-existent-file.txt"));
});
});
(0, ava_1.default)("listFolder", async (t) => {
await util.withTmpDir(async (tmpDir) => {
// Returns empty if not a directory
t.deepEqual(util.listFolder("not-a-directory"), []);
// Returns empty if directory is empty
const emptyTmpDir = fs.mkdtempSync(path_1.default.join(os.tmpdir(), "list-folder-empty-"));
// Returns empty if not a directory
t.deepEqual(util.listFolder("not-a-directory"), []);
// Returns empty if directory is empty
await util.withTmpDir(async (emptyTmpDir) => {
t.deepEqual(util.listFolder(emptyTmpDir), []);
fs.rmSync(emptyTmpDir, { recursive: true, force: true });
// Returns all file names in directory
tmpDir = fs.mkdtempSync(path_1.default.join(os.tmpdir(), "list-folder-"));
});
// Returns all file names in directory
await util.withTmpDir(async (tmpDir) => {
const nestedDir = fs.mkdtempSync(path_1.default.join(tmpDir, "nested-"));
fs.writeFileSync(`${nestedDir}/nested-test-file.txt`, "");
fs.writeFileSync(`${tmpDir}/test-file-1.txt`, "");
fs.writeFileSync(`${tmpDir}/test-file-2.txt`, "");
fs.writeFileSync(`${tmpDir}/test-file-3.txt`, "");
t.deepEqual(util.listFolder(tmpDir), [
`${nestedDir}/nested-test-file.txt`,
`${tmpDir}/test-file-1.txt`,
`${tmpDir}/test-file-2.txt`,
`${tmpDir}/test-file-3.txt`,

File diff suppressed because one or more lines are too long

View file

@ -443,40 +443,39 @@ for (const [
}
test("doesDirectoryExist", async (t) => {
const topLevelFile = "top-level-test-file.txt";
fs.writeFileSync(topLevelFile, "");
// Returns false if file
t.false(util.doesDirectoryExist(topLevelFile));
// Returns false if no file of this type exists
t.false(util.doesDirectoryExist("non-existent-file.txt"));
// Returns true if directory
await util.withTmpDir(async (tmpDir: string) => {
const topLevelFile = "top-level-test-file.txt";
fs.writeFileSync(topLevelFile, "");
fs.writeFileSync(`${tmpDir}/nested-test-file.txt`, "");
// Returns true if directory
t.true(util.doesDirectoryExist(tmpDir));
// Returns false if file
t.false(util.doesDirectoryExist(topLevelFile));
// Returns false if no file of this type exists
t.false(util.doesDirectoryExist("non-existent-file.txt"));
});
});
test("listFolder", async (t) => {
await util.withTmpDir(async (tmpDir: string) => {
// Returns empty if not a directory
t.deepEqual(util.listFolder("not-a-directory"), []);
// Returns empty if not a directory
t.deepEqual(util.listFolder("not-a-directory"), []);
// Returns empty if directory is empty
const emptyTmpDir = fs.mkdtempSync(
path.join(os.tmpdir(), "list-folder-empty-")
);
// Returns empty if directory is empty
await util.withTmpDir(async (emptyTmpDir: string) => {
t.deepEqual(util.listFolder(emptyTmpDir), []);
fs.rmSync(emptyTmpDir, { recursive: true, force: true });
});
// Returns all file names in directory
tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), "list-folder-"));
// Returns all file names in directory
await util.withTmpDir(async (tmpDir: string) => {
const nestedDir = fs.mkdtempSync(path.join(tmpDir, "nested-"));
fs.writeFileSync(`${nestedDir}/nested-test-file.txt`, "");
fs.writeFileSync(`${tmpDir}/test-file-1.txt`, "");
fs.writeFileSync(`${tmpDir}/test-file-2.txt`, "");
fs.writeFileSync(`${tmpDir}/test-file-3.txt`, "");
t.deepEqual(util.listFolder(tmpDir), [
`${nestedDir}/nested-test-file.txt`,
`${tmpDir}/test-file-1.txt`,
`${tmpDir}/test-file-2.txt`,
`${tmpDir}/test-file-3.txt`,