import { tap, expect } from '@push.rocks/tapbundle'; import * as xinvoice from '../ts/index.js'; import * as getInvoices from './assets/getinvoice.js'; const test1 = tap.test('XInvoice should correctly embed XML into a PDF', async (tools) => { // lets setup the XInvoice instance const xInvoice = new xinvoice.XInvoice(); const testZugferdBuffer = await getInvoices.getInvoice( getInvoices.invoices.ZUGFeRDv2.correct.intarsys.BASIC['zugferd_2p0_BASIC_Einfach.pdf'] ); // add the pdf buffer xInvoice.addPdfBuffer(testZugferdBuffer); // lets get the xml buffer const xmlResult = await xInvoice.getXmlData(); console.log(xmlResult); return xmlResult; }); tap.test('should parse the xml', async () => { const xmlResult: string = await test1.testResultPromise as string; // lets setup the XInvoice instance const xInvoiceInstance = new xinvoice.XInvoice(); xInvoiceInstance.addXmlString(xmlResult); const parsedXml = await xInvoiceInstance.getParsedXmlData(); console.log(JSON.stringify(parsedXml, null, 2)); return parsedXml; }); tap.start(); // Run the test suite