diff options
Diffstat (limited to 'src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java')
| -rw-r--r-- | src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java | 91 |
1 files changed, 91 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 7ab1ec0..a4b3bdd 100644 --- a/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java @@ -765,6 +765,97 @@ public class BodyXmlTests { assertThat(result, isCheckbox(true)); } + @Test + public void whenStructuredDocumentTagCheckboxHasSdtContentThenCheckboxReplacesSingleCharacter() { + XmlElement element = element("w:tbl", list( + wTr( + element("w:sdt", list( + element("w:sdtPr", list( + element("wordml:checkbox", list( + element("wordml:checked", map("wordml:val", "1")) + )) + )), + element("w:sdtContent", list( + element("w:tc", list( + element("w:p", list( + element("w:r", list( + element("w:t", list( + textXml("☐") + )) + )) + )) + )) + )) + )) + ) + )); + + DocumentElement result = readSuccess(bodyReader(), element); + + assertThat(result, deepEquals(table(list( + tableRow(list( + tableCell( + withChildren( + paragraph(withChildren( + run(withChildren( + checkbox(true) + )) + )) + ) + ) + )) + )))); + } + + @Test + public void whenStructuredDocumentTagCheckboxHasSdtContentThenDeletedContentIsIgnored() { + XmlElement element = element("w:tbl", list( + wTr( + element("w:sdt", list( + element("w:sdtPr", list( + element("wordml:checkbox", list( + element("wordml:checked", map("wordml:val", "1")) + )) + )), + element("w:sdtContent", list( + element("w:tc", list( + element("w:p", list( + element("w:r", list( + element("w:t", list( + textXml("☐") + )) + )), + element("w:del", list( + element("w:r", list( + element("w:t", list( + textXml("☐") + )) + )) + )) + )) + )) + )) + )) + ) + )); + + DocumentElement result = readSuccess(bodyReader(), element); + + assertThat(result, deepEquals(table(list( + tableRow(list( + tableCell( + withChildren( + paragraph(withChildren( + run(withChildren( + checkbox(true) + )) + )) + ) + ) + )) + )))); + } + private XmlElement complexFieldCheckboxParagraph(List<XmlNode> ffDataChildren) { return element("w:p", list( element("w:r", list( |
