mirror of
https://gitlab.com/openstapps/openstapps.git
synced 2026-01-04 12:32:57 +00:00
30 lines
920 B
TypeScript
30 lines
920 B
TypeScript
import {validateFiles, writeReport} from '@openstapps/core-tools/lib/validate';
|
|
import {slow, suite, test, timeout} from '@testdeck/mocha';
|
|
import {expect} from 'chai';
|
|
import {mkdirSync} from 'fs';
|
|
import {join, resolve} from 'path';
|
|
|
|
@suite(timeout(15000), slow(10000))
|
|
export class SchemaSpec {
|
|
@test
|
|
async 'validate against test files'() {
|
|
const errorsPerFile = {
|
|
...await validateFiles(resolve('lib', 'schema'), resolve('test', 'resources')),
|
|
...await validateFiles(resolve('lib', 'schema'), resolve('test', 'resources', 'indexable')),
|
|
};
|
|
|
|
let unexpected = false;
|
|
Object.keys(errorsPerFile).forEach((file) => {
|
|
unexpected = unexpected || errorsPerFile[file].some((error) => !error.expected);
|
|
});
|
|
|
|
mkdirSync('report', {
|
|
recursive: true,
|
|
});
|
|
|
|
await writeReport(join('report', 'index.html'), errorsPerFile);
|
|
|
|
expect(unexpected).to.be.equal(false);
|
|
}
|
|
}
|