@specs-feup/lara
Version:
A js port of the popular framework for building source-to-source compilers
34 lines (27 loc) • 1.21 kB
text/typescript
import Io from "./Io.js";
import JavaTypes, { JavaClasses } from "./util/JavaTypes.js";
describe("Io", () => {
let testFolder:any;
beforeAll(() => {
//TODO - create mock to avoid file creation
testFolder = Io.mkdir("__ioTest__");
Io.writeFile(Io.getPath(testFolder, "test1.txt"), "test1");
Io.writeFile(Io.getPath(testFolder, "test2.txt"), "test2");
Io.writeFile(Io.getPath(testFolder, "test3.doc"), "test3");
})
describe("getPaths with args", () => {
it("returns the list of text files in a folder when we pass '.txt' in args", () => {
const files: JavaClasses.File[] = Io.getPaths(testFolder, "*.txt");
expect(files.map(file => file.getName()).sort().join()).toBe("test1.txt,test2.txt");
})
})
describe("getPaths without args", () => {
it("returns the list of files in the folder", () => {
const files: JavaClasses.File[] = Io.getPaths(testFolder);
expect(files.map(file => file.getName()).sort().join()).toBe("test1.txt,test2.txt,test3.doc");
})
})
afterAll(() => {
Io.deleteFolder(testFolder);
})
})