usfm-grammar
Version:
Uses the tree-sitter-usfm3 parser to convert USFM files to other formats such as USJ, USX, and CSV, and converts them back to USFM
24 lines (17 loc) • 705 B
JavaScript
const assert = require('assert');
const {allUsfmFiles, initialiseParser, isValidUsfm} = require('./config');
const {USFMParser} = require("../src/index");
describe("Check parsing pass or fail is correct", () => {
allUsfmFiles.forEach(function(value) {
it(`Parse ${value} to ensure validity ${isValidUsfm[value]}`, (inputUsfmPath=value) => {
const testParser = initialiseParser(inputUsfmPath)
assert(testParser instanceof USFMParser)
assert(testParser.errors instanceof Array)
if (isValidUsfm[inputUsfmPath] === true) {
assert.strictEqual(testParser.errors.length, 0);
} else {
assert.notStrictEqual(testParser.errors.length, 0);
}
});
});
});