1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- var assert = require("assert");
- var createCommentsReader = require("../../lib/docx/comments-reader").createCommentsReader;
- var createBodyReader = require("../../lib/docx/body-reader").createBodyReader;
- var stylesReader = require("../../lib/docx/styles-reader");
- var documents = require("../../lib/documents");
- var xml = require("../../lib/xml");
- var test = require("../test")(module);
- function readComment(element) {
- var bodyReader = createBodyReader({styles: stylesReader.defaultStyles});
- var commentsReader = createCommentsReader(bodyReader);
- var comments = commentsReader(element);
- assert.equal(comments.value.length, 1);
- return comments.value[0];
- }
- test('ID and body of comment are read', function() {
- var body = [xml.element("w:p")];
- var comment = readComment(xml.element("w:comments", {}, [
- xml.element("w:comment", {"w:id": "1"}, body)
- ]));
- assert.deepEqual(comment.body, [new documents.Paragraph([])]);
- assert.deepEqual(comment.commentId, "1");
- });
- test('when optional attributes of comment are missing then they are read as null', function() {
- var comment = readComment(xml.element("w:comments", {}, [
- xml.element("w:comment", {"w:id": "1"})
- ]));
- assert.strictEqual(comment.authorName, null);
- assert.strictEqual(comment.authorInitials, null);
- });
- test('when optional attributes of comment are blank then they are read as null', function() {
- var comment = readComment(xml.element("w:comments", {}, [
- xml.element("w:comment", {"w:id": "1", "w:author": " ", "w:initials": " "})
- ]));
- assert.strictEqual(comment.authorName, null);
- assert.strictEqual(comment.authorInitials, null);
- });
- test('when optional attributes of comment are not blank then they are read', function() {
- var comment = readComment(xml.element("w:comments", {}, [
- xml.element("w:comment", {"w:id": "1", "w:author": "The Piemaker", "w:initials": "TP"})
- ]));
- assert.strictEqual(comment.authorName, "The Piemaker");
- assert.strictEqual(comment.authorInitials, "TP");
- });
|