From 7864626f385e23272bf307474ceaebe281b4ed28 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 13 Feb 2016 19:38:11 +0000 Subject: Read appropriate elements as their children --- .../java/org/zwobble/mammoth/docx/BodyXmlReader.java | 9 +++++++++ .../org/zwobble/mammoth/tests/docx/BodyXmlTests.java | 19 +++++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java b/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java index 78baf51..dcef0c5 100644 --- a/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java +++ b/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java @@ -45,6 +45,15 @@ public class BodyXmlReader { case "w:tc": return readElements(element.children()).map(TableCell::new); + case "w:ins": + case "w:smartTag": + case "w:drawing": + case "w:roundrect": + case "w:shape": + case "w:textbox": + case "w:txbxContent": + return readElements(element.children()); + case "w:pPr": return EMPTY_SUCCESS; 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 9c898a9..b1ce149 100644 --- a/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java @@ -277,6 +277,25 @@ public class BodyXmlTests { make(a(PARAGRAPH)))))))))); } + @Test + public void appropriateElementsHaveTheirChildrenReadNormally() { + assertChildrenAreReadNormally("w:ins"); + assertChildrenAreReadNormally("w:smartTag"); + assertChildrenAreReadNormally("w:drawing"); + assertChildrenAreReadNormally("w:roundrect"); + assertChildrenAreReadNormally("w:shape"); + assertChildrenAreReadNormally("w:textbox"); + assertChildrenAreReadNormally("w:txbxContent"); + } + + private void assertChildrenAreReadNormally(String name) { + XmlElement element = element(name, list(paragraphXml())); + + assertThat( + readSuccess(a(bodyReader), element), + deepEquals(make(a(PARAGRAPH)))); + } + private static DocumentElement readSuccess(Maker reader, XmlElement element) { Result result = read(reader, element); assertThat(result.getWarnings(), deepEquals(list())); -- cgit v1.2.3