Added support for w:fldSimple, including convenience class for simple MailMerge fields
This commit is contained in:
38
src/file/paragraph/run/simple-field.spec.ts
Normal file
38
src/file/paragraph/run/simple-field.spec.ts
Normal file
@ -0,0 +1,38 @@
|
||||
import { expect } from "chai";
|
||||
|
||||
import { Formatter } from "export/formatter";
|
||||
|
||||
import { SimpleField, SimpleMailMergeField } from "./simple-field";
|
||||
|
||||
describe("SimpleField", () => {
|
||||
describe("#constructor()", () => {
|
||||
it("uses the instruction given", () => {
|
||||
const tree = new Formatter().format(new SimpleField("FILENAME"));
|
||||
expect(tree).to.deep.equal({ "w:fldSimple": { _attr: { "w:instr": "FILENAME" } } });
|
||||
});
|
||||
|
||||
it("accepts a cached value", () => {
|
||||
const tree = new Formatter().format(new SimpleField("FILENAME", "ExampleDoc.docx"));
|
||||
expect(tree).to.deep.equal({
|
||||
"w:fldSimple": [
|
||||
{ _attr: { "w:instr": "FILENAME" } },
|
||||
{ "w:r": [{ "w:t": [{ _attr: { "xml:space": "preserve" } }, "ExampleDoc.docx"] }] },
|
||||
],
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe("SimpleMailMergeField", () => {
|
||||
describe("#constructor()", () => {
|
||||
it("creates a simple field", () => {
|
||||
const tree = new Formatter().format(new SimpleMailMergeField("Name"));
|
||||
expect(tree).to.deep.equal({
|
||||
"w:fldSimple": [
|
||||
{ _attr: { "w:instr": " MERGEFIELD Name " } },
|
||||
{ "w:r": [{ "w:t": [{ _attr: { "xml:space": "preserve" } }, "«Name»"] }] },
|
||||
],
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
Reference in New Issue
Block a user