blob: 66b2310470a4d5d69fc24ab3a7e6b1216e7b4d28 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
import fs from "fs-extra";
import path from "path";
import { isFolderEmpty } from "../src/utils/isFolderEmpty";
import { setupTestFixtures } from "@turbo/test-utils";
describe("isFolderEmpty", () => {
const { useFixture } = setupTestFixtures({
directory: path.join(__dirname, "../"),
});
it("correctly identifies an empty directory", async () => {
const { root } = useFixture({ fixture: `is-folder-empty` });
const result = isFolderEmpty(root);
expect(result.isEmpty).toEqual(true);
expect(result.conflicts).toEqual([]);
});
it("correctly identifies a directory with non-conflicting files", async () => {
const { root } = useFixture({ fixture: `is-folder-empty` });
fs.writeFileSync(path.join(root, "LICENSE"), "MIT");
const result = isFolderEmpty(root);
expect(result.isEmpty).toEqual(true);
expect(result.conflicts).toEqual([]);
});
it("correctly identifies a directory non-conflicting files (intelliJ)", async () => {
const { root } = useFixture({ fixture: `is-folder-empty` });
fs.writeFileSync(path.join(root, "intellij-idea-config.iml"), "{}");
const result = isFolderEmpty(root);
expect(result.isEmpty).toEqual(true);
expect(result.conflicts).toEqual([]);
});
it("correctly identifies a directory conflicting files", async () => {
const { root } = useFixture({ fixture: `is-folder-empty` });
fs.writeFileSync(path.join(root, "README.md"), "my cool project");
const result = isFolderEmpty(root);
expect(result.isEmpty).toEqual(false);
expect(result.conflicts).toEqual(["README.md"]);
});
});
|