Skip to content
Snippets Groups Projects

Add tests

Merged Jan Loewe requested to merge feat-jest-tests into master
1 file
+ 1
1
Compare changes
  • Side-by-side
  • Inline
tests/util.ts 0 → 100644
+ 36
0
import * as xpathTs from "xpath-ts";
import { JSDOM } from "jsdom";
import { DCCDocument, DCCXMLElement } from "../src";
export function select(xpath: string, domOrDCC: JSDOM | DCCDocument): string | number | boolean | Node | Node[] {
let dom = <JSDOM>domOrDCC;
if (domOrDCC.digitalCalibrationCertificate) {
dom = toDom(<DCCDocument>domOrDCC);
}
return xpathTs.select(xpath, dom.window.document);
}
export function toDom(dcc: DCCDocument) {
return new JSDOM(dcc.toXML(), { contentType: "application/xml" });
}
export function toTextArr(arr: DCCXMLElement[]) {
if (!arr) return [];
return arr.map((x) => x._text);
}
export function indexOf(arr: DCCXMLElement[], el: string) {
return toTextArr(arr).indexOf(el);
}
export function toTextContentArr(el: Element[]) {
if (!el) return [];
return el.map((x) => x.textContent);
}
export function undefinedIfEmpty(str) {
if (!str) return undefined;
if (str.trim() === "") return undefined;
return str;
}
Loading