diff options
| author | Michael Williamson <mike@zwobble.org> | 2018-01-27 18:17:22 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2018-01-27 18:17:22 +0000 |
| commit | 29a3d3491a2796c5a1e772c2f15deb2a9a2e9376 (patch) | |
| tree | 0048e1d8e749ea518eef52c03172280bdf4450b4 /src/test/java/org/zwobble/mammoth/tests/docx/DocumentReaderTests.java | |
| parent | 4e9396324c6d720484e639e449382280aa7e14fe (diff) | |
Find comments part using document relationships
Diffstat (limited to 'src/test/java/org/zwobble/mammoth/tests/docx/DocumentReaderTests.java')
| -rw-r--r-- | src/test/java/org/zwobble/mammoth/tests/docx/DocumentReaderTests.java | 52 |
1 files changed, 50 insertions, 2 deletions
diff --git a/src/test/java/org/zwobble/mammoth/tests/docx/DocumentReaderTests.java b/src/test/java/org/zwobble/mammoth/tests/docx/DocumentReaderTests.java index ddccd9c..bce431a 100644 --- a/src/test/java/org/zwobble/mammoth/tests/docx/DocumentReaderTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/docx/DocumentReaderTests.java @@ -103,7 +103,6 @@ public class DocumentReaderTests { )); DocumentReader.PartPaths partPaths = DocumentReader.findPartPaths(archive); - assertThat(partPaths.getMainDocument(), equalTo("word/document2.xml")); } @@ -114,8 +113,57 @@ public class DocumentReaderTests { )); DocumentReader.PartPaths partPaths = DocumentReader.findPartPaths(archive); - assertThat(partPaths.getMainDocument(), equalTo("word/document.xml")); } + @Test + public void commentsPartIsFoundUsingMainDocumentRelationships() { + InMemoryArchive archive = InMemoryArchive.fromStrings(map( + "_rels/.rels", XmlWriter.toString( + element("Relationships", list( + element("Relationship", map( + "Id", "rId1", + "Target", "/word/document.xml", + "Type", "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" + )) + )), + relationshipsNamespaces + ), + "word/document.xml", " ", + "word/_rels/document.xml.rels", XmlWriter.toString( + element("Relationships", list( + element("Relationship", map( + "Id", "rId2", + "Target", "target-path.xml", + "Type", "http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments" + )) + )), + relationshipsNamespaces + ), + "word/target-path.xml", " " + )); + + DocumentReader.PartPaths partPaths = DocumentReader.findPartPaths(archive); + assertThat(partPaths.getComments(), equalTo("word/target-path.xml")); + } + + @Test + public void whenRelationshipsForCommentsCannotBeFoundThenFallbackIsUsed() { + InMemoryArchive archive = InMemoryArchive.fromStrings(map( + "word/document.xml", " ", + "_rels/.rels", XmlWriter.toString( + element("Relationships", list( + element("Relationship", map( + "Id", "rId1", + "Target", "/word/document.xml", + "Type", "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" + )) + )), + relationshipsNamespaces + ) + )); + + DocumentReader.PartPaths partPaths = DocumentReader.findPartPaths(archive); + assertThat(partPaths.getComments(), equalTo("word/comments.xml")); + } } } |
