diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-11-28 17:59:14 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-11-28 17:59:14 +0000 |
| commit | bb3d113828218fa29dae16cae6f2ff5e05e48564 (patch) | |
| tree | 3eef75e7004185852fba00f0e0366888d37609a0 | |
| parent | 611e0c9af7c1948ad46c5471a426ec751e73a1ea (diff) | |
Change LineBreak to Break with a break type
| -rw-r--r-- | lib/document-to-html.js | 2 | ||||
| -rw-r--r-- | lib/documents.js | 9 | ||||
| -rw-r--r-- | lib/docx/body-reader.js | 2 | ||||
| -rw-r--r-- | test/document-to-html.tests.js | 3 | ||||
| -rw-r--r-- | test/docx/body-reader.tests.js | 13 |
5 files changed, 14 insertions, 15 deletions
diff --git a/lib/document-to-html.js b/lib/document-to-html.js index d223d82..2591e4f 100644 --- a/lib/document-to-html.js +++ b/lib/document-to-html.js @@ -349,7 +349,7 @@ function DocumentConversion(options, comments) { "table": convertTable, "tableRow": convertTableRow, "tableCell": convertTableCell, - "lineBreak": function(element, messages) { + "break": function(element, messages) { return [Html.freshElement("br")]; } }; diff --git a/lib/documents.js b/lib/documents.js index fc45627..cb62939 100644 --- a/lib/documents.js +++ b/lib/documents.js @@ -15,7 +15,7 @@ var types = exports.types = { table: "table", tableRow: "tableRow", tableCell: "tableCell", - lineBreak: "lineBreak", + "break": "break", bookmarkStart: "bookmarkStart" }; @@ -170,9 +170,10 @@ function TableCell(children, options) { }; } -function LineBreak() { +function Break(breakType) { return { - type: types.lineBreak + type: types["break"], + breakType: breakType }; } @@ -198,7 +199,7 @@ exports.Image = Image; exports.Table = Table; exports.TableRow = TableRow; exports.TableCell = TableCell; -exports.LineBreak = LineBreak; +exports.lineBreak = Break("line"); exports.BookmarkStart = BookmarkStart; exports.verticalAlignment = verticalAlignment; diff --git a/lib/docx/body-reader.js b/lib/docx/body-reader.js index 8c403be..c4a61f0 100644 --- a/lib/docx/body-reader.js +++ b/lib/docx/body-reader.js @@ -177,7 +177,7 @@ function BodyReader(options) { if (breakType) { return emptyResultWithMessages([warning("Unsupported break type: " + breakType)]); } else { - return elementResult(new documents.LineBreak()); + return elementResult(documents.lineBreak); } }, "w:bookmarkStart": function(element){ diff --git a/test/document-to-html.tests.js b/test/document-to-html.tests.js index c739900..6134dd0 100644 --- a/test/document-to-html.tests.js +++ b/test/document-to-html.tests.js @@ -435,10 +435,9 @@ test('table cells are written with rowSpan if not equal to one', function() { }); test('line break is converted to <br>', function() { - var lineBreak = new documents.LineBreak(); var converter = new DocumentConverter(); - return converter.convertToHtml(lineBreak).then(function(result) { + return converter.convertToHtml(documents.lineBreak).then(function(result) { assert.equal(result.value, "<br />"); }); }); diff --git a/test/docx/body-reader.tests.js b/test/docx/body-reader.tests.js index 2b96ded..bc9257f 100644 --- a/test/docx/body-reader.tests.js +++ b/test/docx/body-reader.tests.js @@ -694,18 +694,17 @@ test("w:hyperlink is ignored if it does not have a relationship ID nor anchor", assert.deepEqual(result.value[0].type, "run"); }); -test("w:br is read as line break", function() { +test("w:br without explicit type is read as line break", function() { var breakXml = new XmlElement("w:br", {}, []); - var result = readXmlElement(breakXml); - assert.deepEqual(result.value.type, "lineBreak"); - assert.deepEqual(result.messages, []); + var result = readXmlElementValue(breakXml); + assert.deepEqual(result, documents.lineBreak); }); -test("warning on breaks that aren't line breaks", function() { - var breakXml = new XmlElement("w:br", {"w:type": "page"}, []); +test("warning on breaks that aren't recognised", function() { + var breakXml = new XmlElement("w:br", {"w:type": "unknownBreakType"}, []); var result = readXmlElement(breakXml); assert.deepEqual(result.value, []); - assert.deepEqual(result.messages, [warning("Unsupported break type: page")]); + assert.deepEqual(result.messages, [warning("Unsupported break type: unknownBreakType")]); }); test("w:footnoteReference has ID read", function() { |
