diff options
| author | Michael Williamson <mike@zwobble.org> | 2017-07-21 12:05:29 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-07-21 12:05:29 +0100 |
| commit | 2107916e9f5ac9288f69f09048cb992ec7ab92b4 (patch) | |
| tree | 40b6f218fbbac7782effb8b0ab1255b3e773a315 /test | |
| parent | 534f62e0684af52766adf82b8fd5dbf796e018db (diff) | |
| parent | 33f089bb9f1d8fa599fe10ba1ddead6c10dbd4b4 (diff) | |
Merge pull request #124 from vgmoose/master
Add style mapping for small caps
Diffstat (limited to 'test')
| -rw-r--r-- | test/document-to-html.tests.js | 24 | ||||
| -rw-r--r-- | test/docx/body-reader.tests.js | 14 | ||||
| -rw-r--r-- | test/style-reader.tests.js | 8 |
3 files changed, 46 insertions, 0 deletions
diff --git a/test/document-to-html.tests.js b/test/document-to-html.tests.js index bf6631f..861033b 100644 --- a/test/document-to-html.tests.js +++ b/test/document-to-html.tests.js @@ -296,6 +296,30 @@ test('subscript runs are wrapped in <sub> tags', function() { }); }); +test('small caps runs are ignored by default', function() { + var run = runOfText("Hello.", {isSmallCaps: true}); + var converter = new DocumentConverter(); + return converter.convertToHtml(run).then(function(result) { + assert.equal(result.value, "Hello."); + }); +}); + +test('small caps runs can be configured with style mapping', function() { + var run = runOfText("Hello.", {isSmallCaps: true}); + var converter = new DocumentConverter({ + styleMap: [ + { + from: documentMatchers.smallCaps, + to: htmlPaths.elements([htmlPaths.element("span")]) + } + ] + }); + return converter.convertToHtml(run).then(function(result) { + assert.equal(result.value, "<span>Hello.</span>"); + }); +}); + + test('run styles are converted to HTML if mapping exists', function() { var run = runOfText("Hello.", {styleId: "Heading1Char", styleName: "Heading 1 Char"}); var converter = new DocumentConverter({ diff --git a/test/docx/body-reader.tests.js b/test/docx/body-reader.tests.js index 5257530..f84f0e8 100644 --- a/test/docx/body-reader.tests.js +++ b/test/docx/body-reader.tests.js @@ -431,11 +431,25 @@ test("isItalic is true if bold element is present", function() { assert.equal(run.isItalic, true); }); +test("isSmallCaps is false if smallcaps element is not present", function() { + var runXml = runWithProperties([]); + var run = readXmlElementValue(runXml); + assert.deepEqual(run.isSmallCaps, false); +}); + +test("isSmallCaps is true if smallcaps element is present", function() { + var smallCapsXml = new XmlElement("w:smallCaps"); + var runXml = runWithProperties([smallCapsXml]); + var run = readXmlElementValue(runXml); + assert.equal(run.isSmallCaps, true); +}); + var booleanRunProperties = [ {name: "isBold", tagName: "w:b"}, {name: "isUnderline", tagName: "w:u"}, {name: "isItalic", tagName: "w:i"}, {name: "isStrikethrough", tagName: "w:strike"}, + {name: "isSmallCaps", tagName: "w:smallCaps"}, ]; booleanRunProperties.forEach(function(runProperty) { diff --git a/test/style-reader.tests.js b/test/style-reader.tests.js index 96c0c39..20d4127 100644 --- a/test/style-reader.tests.js +++ b/test/style-reader.tests.js @@ -159,6 +159,13 @@ test("styleReader.readDocumentMatcher", { ); }, + "reads smallcaps": function() { + assertDocumentMatcher( + "small-caps", + documentMatchers.smallCaps + ); + }, + "reads comment-reference": function() { assertDocumentMatcher( "comment-reference", @@ -186,6 +193,7 @@ test("styleReader.readDocumentMatcher", { documentMatchers.columnBreak ); } + }); function assertDocumentMatcher(input, expected) { |
