diff options
| author | Michael Williamson <mike@zwobble.org> | 2021-01-19 20:25:21 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2021-01-19 20:25:21 +0000 |
| commit | a423d1a368eb1e81951e5d8a75347fa7997152bf (patch) | |
| tree | 4c8cf748c3f01552831ca538a9846ac19a075bfa /test | |
| parent | f141817b947e36a9db7c56600c5031de32bb0fb9 (diff) | |
Convert symbols in supported fonts to corresponding Unicode characters
Diffstat (limited to 'test')
| -rw-r--r-- | test/docx/body-reader.tests.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/test/docx/body-reader.tests.js b/test/docx/body-reader.tests.js index 331ab18..49ea73c 100644 --- a/test/docx/body-reader.tests.js +++ b/test/docx/body-reader.tests.js @@ -672,6 +672,27 @@ test("soft hyphens are read as text", function() { assert.deepEqual(text, new documents.Text("\u00AD")); }); +test("w:sym with supported font and supported code point in ASCII range is converted to text", function() { + var element = new XmlElement("w:sym", {"w:font": "Wingdings", "w:char": "28"}, []); + var text = readXmlElementValue(element); + assert.deepEqual(text, new documents.Text("🕿")); +}); + +test("w:sym with supported font and supported code point in private use area is converted to text", function() { + var element = new XmlElement("w:sym", {"w:font": "Wingdings", "w:char": "F028"}, []); + var text = readXmlElementValue(element); + assert.deepEqual(text, new documents.Text("🕿")); +}); + +test("w:sym with unsupported font and code point produces empty result with warning", function() { + var element = new XmlElement("w:sym", {"w:font": "Dingwings", "w:char": "28"}, []); + + var result = readXmlElement(element); + + assert.deepEqual(result.value, []); + assert.deepEqual(result.messages, [warning("A w:sym element with an unsupported character was ignored: char 28 in font Dingwings")]); +}); + test("w:tbl is read as document table element", function() { var tableXml = new XmlElement("w:tbl", {}, [ new XmlElement("w:tr", {}, [ |
