import { expect } from "chai"; import { Formatter } from "export/formatter"; import { CustomProperties } from "./custom-properties"; describe("CustomProperties", () => { describe("#constructor()", () => { it("sets the appropriate attributes on the top-level", () => { const properties = new CustomProperties([]); const tree = new Formatter().format(properties); expect(tree).to.deep.equal({ Properties: { _attr: { xmlns: "http://schemas.openxmlformats.org/officeDocument/2006/custom-properties", "xmlns:vt": "http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes", }, }, }); }); it("should create custom properties with all the attributes given", () => { const properties = new CustomProperties([ { name: "Address", value: "123" }, { name: "Author", value: "456" }, ]); const tree = new Formatter().format(properties); expect(tree).to.deep.equal({ Properties: [ { _attr: { xmlns: "http://schemas.openxmlformats.org/officeDocument/2006/custom-properties", "xmlns:vt": "http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes", }, }, { property: [ { _attr: { fmtid: "{D5CDD505-2E9C-101B-9397-08002B2CF9AE}", pid: "2", name: "Address", }, }, { "vt:lpwstr": ["123"], }, ], }, { property: [ { _attr: { fmtid: "{D5CDD505-2E9C-101B-9397-08002B2CF9AE}", pid: "3", name: "Author", }, }, { "vt:lpwstr": ["456"], }, ], }, ], }); }); }); });