From 290f131be368cb8f46d62be124ce7141028e7b5a Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 13 Feb 2016 19:57:17 +0000 Subject: Read children of hyperlink if link cannot be determined --- src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java | 2 +- src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java b/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java index dd0bf09..e283a9c 100644 --- a/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java +++ b/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java @@ -168,7 +168,7 @@ public class BodyXmlReader { return childrenResult.map(children -> Hyperlink.anchor( anchor.get(), children)); } else { - return ReadResult.EMPTY_SUCCESS; + return childrenResult; } } 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 4566e11..ed028fe 100644 --- a/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java @@ -312,6 +312,14 @@ public class BodyXmlTests { deepEquals(Hyperlink.anchor("start", list(make(a(RUN)))))); } + @Test + public void hyperlinkIsIgnoredIfItDoesNotHaveARelationshipIdNorAnchor() { + XmlElement element = element("w:hyperlink", list(runXml(list()))); + assertThat( + readSuccess(a(bodyReader), element), + deepEquals(make(a(RUN)))); + } + private static DocumentElement readSuccess(Maker reader, XmlElement element) { Result result = read(reader, element); assertThat(result.getWarnings(), deepEquals(list())); -- cgit v1.2.3