diff options
| author | Michael Williamson <mike@zwobble.org> | 2021-01-23 15:35:10 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2021-01-23 15:35:10 +0000 |
| commit | 9900b88419abc1bf8f29c856f620fbbfda358d1c (patch) | |
| tree | 4bba2af78a9e064f0a52303cdba6a8a92f579358 /src/test/java | |
| parent | 18d8561d42b28061b12b350a236de08b70b0c67f (diff) | |
Convert symbols in supported fonts to corresponding Unicode characters
Diffstat (limited to 'src/test/java')
| -rw-r--r-- | src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java b/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java index fffc901..7e7e980 100644 --- a/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java @@ -770,6 +770,42 @@ public class BodyXmlTests { } @Test + public void symWithSupportedFontAndSupportedCodePointInAsciiRangeIsConvertedToText() { + XmlElement element = element("w:sym", map("w:font", "Wingdings", "w:char", "28")); + + DocumentElement result = readSuccess(bodyReader(), element); + + assertThat( + result, + isTextElement("\uD83D\uDD7F") + ); + } + + @Test + public void symWithSupportedFontAndSupportedCodePointInPrivateUseAreaIsConvertedToText() { + XmlElement element = element("w:sym", map("w:font", "Wingdings", "w:char", "F028")); + + DocumentElement result = readSuccess(bodyReader(), element); + + assertThat( + result, + isTextElement("\uD83D\uDD7F") + ); + } + + @Test + public void symWithUnsupportedFontAndCodePointProducesEmptyResultWithWarning() { + XmlElement element = element("w:sym", map("w:font", "Dingwings", "w:char", "28")); + + InternalResult<List<DocumentElement>> result = readAll(bodyReader(), element); + + assertThat(result, isInternalResult( + equalTo(list()), + list("A w:sym element with an unsupported character was ignored: char 28 in font Dingwings") + )); + } + + @Test public void brWithoutExplicitTypeIsReadAsLineBreak() { XmlElement element = element("w:br"); |
