123456789101112131415161718192021222324252627282930313233343536 |
- var assert = require("assert");
- var createFootnotesReader = require("../../lib/docx/notes-reader").createFootnotesReader;
- var createBodyReader = require("../../lib/docx/body-reader").createBodyReader;
- var stylesReader = require("../../lib/docx/styles-reader");
- var documents = require("../../lib/documents");
- var XmlElement = require("../../lib/xml").Element;
- var test = require("../test")(module);
- test('ID and body of footnote are read', function() {
- var bodyReader = new createBodyReader({styles: stylesReader.defaultStyles});
- var footnoteBody = [new XmlElement("w:p", {}, [])];
- var footnotes = createFootnotesReader(bodyReader)(
- new XmlElement("w:footnotes", {}, [
- new XmlElement("w:footnote", {"w:id": "1"}, footnoteBody)
- ])
- );
- assert.equal(footnotes.value.length, 1);
- assert.deepEqual(footnotes.value[0].body, [new documents.Paragraph([])]);
- assert.deepEqual(footnotes.value[0].noteId, "1");
- });
- footnoteTypeIsIgnored('continuationSeparator');
- footnoteTypeIsIgnored('separator');
- function footnoteTypeIsIgnored(type) {
- test('footnotes of type ' + type + ' are ignored', function() {
- var footnotes = createFootnotesReader()(
- new XmlElement("w:footnotes", {}, [
- new XmlElement("w:footnote", {"w:id": "1", "w:type": type}, [])
- ])
- );
- assert.equal(footnotes.value.length, 0);
- });
- }
|