mirror of
https://github.com/zadam/trilium.git
synced 2024-12-28 02:43:54 +08:00
81 lines
2.1 KiB
JavaScript
81 lines
2.1 KiB
JavaScript
export function describe(name, cb) {
|
|
console.log(`Running ${name}`);
|
|
|
|
cb();
|
|
}
|
|
|
|
export async function it(name, cb) {
|
|
console.log(` Running ${name}`);
|
|
|
|
cb();
|
|
}
|
|
|
|
let errorCount = 0;
|
|
|
|
export function expect(val) {
|
|
return {
|
|
toEqual: comparedVal => {
|
|
const jsonVal = JSON.stringify(val);
|
|
const comparedJsonVal = JSON.stringify(comparedVal);
|
|
|
|
if (jsonVal !== comparedJsonVal) {
|
|
console.trace("toEqual check failed.");
|
|
console.error(`expected: ${comparedJsonVal}`);
|
|
console.error(`got: ${jsonVal}`);
|
|
|
|
errorCount++;
|
|
}
|
|
},
|
|
toBeTruthy: () => {
|
|
if (!val) {
|
|
console.trace("toBeTruthy failed.");
|
|
console.error(`expected: truthy value`);
|
|
console.error(`got: ${val}`);
|
|
|
|
errorCount++;
|
|
}
|
|
},
|
|
toBeFalsy: () => {
|
|
if (!!val) {
|
|
console.trace("toBeFalsy failed.");
|
|
console.error(`expected: null, false, undefined, 0 or empty string`);
|
|
console.error(`got: ${val}`);
|
|
|
|
errorCount++;
|
|
}
|
|
},
|
|
toThrow: errorMessage => {
|
|
try {
|
|
val();
|
|
}
|
|
catch (e) {
|
|
if (e.message !== errorMessage) {
|
|
console.trace("toThrow caught exception, but messages differ");
|
|
console.error(`expected: ${errorMessage}`);
|
|
console.error(`got: ${e.message}`);
|
|
console.error(`${e.stack}`);
|
|
|
|
errorCount++;
|
|
}
|
|
|
|
return;
|
|
}
|
|
|
|
console.trace("toThrow did not catch any exception.");
|
|
console.error(`expected: ${errorMessage}`);
|
|
console.error(`got: [none]`);
|
|
errorCount++;
|
|
}
|
|
}
|
|
}
|
|
|
|
export function execute() {
|
|
console.log("");
|
|
|
|
if (errorCount) {
|
|
console.log(`!!!${errorCount} tests failed!!!`);
|
|
}
|
|
else {
|
|
console.log("All tests passed!");
|
|
}
|
|
}
|