This commit is contained in:
DaanV2
2021-08-18 20:48:09 +02:00
parent 7dfdb0802c
commit ba7e4203d8
8 changed files with 272 additions and 49 deletions

View File

@@ -1,7 +1,7 @@
import { expect } from "chai";
import { Files } from "./Utillity";
describe("files", () => {
describe("Files", () => {
it("Root", () => {
const temp = Files.RootFolder();
console.log(temp);

View File

@@ -3,7 +3,7 @@ import path = require("path");
export namespace Files {
export function TestFolder(): string {
return path.join(__dirname, "..", "..", "test");
return path.join(__dirname, "..", "..", "..", "test");
}
export function RootFolder(): string {
@@ -23,6 +23,10 @@ export namespace Files {
}
export function GetFiles(folder: string): string[] {
return FastGlob.sync(folder, { absolute: true, onlyFiles: true });
if (!folder.endsWith("\\")) folder += "\\";
folder = folder.replace("\\", "/");
return FastGlob.sync(["*.json", "**/*.json"], { absolute: true, onlyFiles: true, cwd: folder });
}
}

View File

@@ -3,27 +3,29 @@ import { Schema } from "../SchemaTester";
import { Files } from "../Utillity";
describe("test correct files", () => {
const folder = Files.CorrectFilesFolder();
const folder = Files.CorrectFilesFolder().replace(/\\/gi, "/");
const files = Files.GetFiles(folder);
const validator = Schema.GetValidator();
expect(files.length, "No files were returned").to.greaterThan(0);
files.forEach((file) => {
if (file.endsWith(".json")) {
const testfolder = file.replace(folder, "");
const testfolder = file.replace(folder + "/", "");
test(testfolder, (done) => {
it(testfolder, () => {
let result = validator.ValidateFile(file);
result.promise.then(
(succes) => {
expect(succes.length, "Expected no errors got: " + JSON.stringify(succes)).to.equal(0);
done();
},
(fail) => {
expect.fail("Failed to validate");
done();
}
);
return result.promise;
});
}
});

View File

@@ -0,0 +1,32 @@
import { expect } from "chai";
import { Schema } from "../SchemaTester";
import { Files } from "../Utillity";
describe("test incorrect files", () => {
const folder = Files.InCorrectFilesFolder().replace(/\\/gi, "/");
const files = Files.GetFiles(folder);
const validator = Schema.GetValidator();
expect(files.length, "No files were returned").to.greaterThan(0);
files.forEach((file) => {
if (file.endsWith(".json")) {
const testfolder = file.replace(folder + "/", "");
it(testfolder, () => {
let result = validator.ValidateFile(file);
result.promise.then(
(succes) => {
expect(succes.length, "Expected errors! but had none").to.greaterThan(0);
},
(fail) => {
expect.fail("Failed to validate");
}
);
return result.promise;
});
}
});
});