diff options
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/java/org/zwobble/mammoth/tests/docx/CommentXmlTests.java | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/src/test/java/org/zwobble/mammoth/tests/docx/CommentXmlTests.java b/src/test/java/org/zwobble/mammoth/tests/docx/CommentXmlTests.java index e7f9994..fa37bea 100644 --- a/src/test/java/org/zwobble/mammoth/tests/docx/CommentXmlTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/docx/CommentXmlTests.java @@ -7,11 +7,13 @@ import org.zwobble.mammoth.internal.results.InternalResult; import org.zwobble.mammoth.internal.xml.XmlNode; import java.util.List; +import java.util.Optional; import static com.natpryce.makeiteasy.MakeItEasy.a; import static com.natpryce.makeiteasy.MakeItEasy.make; import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.contains; +import static org.hamcrest.Matchers.*; +import static org.hamcrest.core.Is.isA; import static org.zwobble.mammoth.internal.util.Lists.list; import static org.zwobble.mammoth.internal.util.Maps.map; import static org.zwobble.mammoth.internal.xml.XmlNodes.element; @@ -31,7 +33,30 @@ public class CommentXmlTests { assertThat( result, isInternalSuccess(contains( - deepEquals(new Comment("1", list(make(a(PARAGRAPH))))) + allOf( + isA(Comment.class), + hasProperty("commentId", equalTo("1")), + hasProperty("body", deepEquals(list(make(a(PARAGRAPH))))) + ) + )) + ); + } + + @Test + public void whenOptionalAttributesOfCommentAreMissingThenTheyAreReadAsNone() { + List<XmlNode> body = list(element("w:p")); + CommentXmlReader reader = new CommentXmlReader(make(a(bodyReader))); + InternalResult<List<Comment>> result = reader.readElement(element("w:comments", list( + element("w:comment", map("w:id", "1"), body) + ))); + assertThat( + result, + isInternalSuccess(contains( + allOf( + isA(Comment.class), + hasProperty("authorName", equalTo(Optional.empty())), + hasProperty("authorInitials", equalTo(Optional.empty())) + ) )) ); } |
