Write tests and simplify logic

This commit is contained in:
Dolan Miu
2023-04-04 22:21:01 +01:00
parent 10c866bdea
commit 0386810714
3 changed files with 52 additions and 22 deletions

View File

@ -1,7 +1,7 @@
// Patch a document with patches
// Import from 'docx' rather than '../build' if you install from npm
import * as fs from "fs";
import { IPatch, patchDocument, PatchType, TextRun } from "../src";
import { IPatch, patchDocument, PatchType, TextRun } from "../build";
export const font = "Trebuchet MS";
export const getPatches = (fields: { [key: string]: string }) => {

View File

@ -88,26 +88,56 @@ describe("paragraph-split-inject", () => {
});
it("should continue if text run doesn't have text", () => {
const output = findRunElementIndexWithToken(
{
name: "w:p",
type: "element",
elements: [
{
name: "w:r",
type: "element",
elements: [
{
name: "w:t",
type: "element",
},
],
},
],
},
"hello",
);
expect(output).to.deep.equal(0);
expect(() =>
findRunElementIndexWithToken(
{
name: "w:p",
type: "element",
elements: [
{
name: "w:r",
type: "element",
elements: [
{
name: "w:t",
type: "element",
},
],
},
],
},
"hello",
),
).to.throw();
});
it("should continue if text run doesn't have text", () => {
expect(() =>
findRunElementIndexWithToken(
{
name: "w:p",
type: "element",
elements: [
{
name: "w:r",
type: "element",
elements: [
{
name: "w:t",
type: "element",
elements: [
{
type: "text",
},
],
},
],
},
],
},
"hello",
),
).to.throw();
});
});

View File

@ -12,7 +12,7 @@ export const findRunElementIndexWithToken = (paragraphElement: Element, token: s
continue;
}
if ((text.elements?.[0].text as string)?.includes(token)) {
if ((text.elements[0].text as string)?.includes(token)) {
return i;
}
}