diff options
| author | Michael Williamson <mike@zwobble.org> | 2018-01-27 18:07:50 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2018-01-27 18:07:50 +0000 |
| commit | 4e9396324c6d720484e639e449382280aa7e14fe (patch) | |
| tree | d9cda1750742a23f423ce44ec4bf536b1d7cdcb6 /src/test/java | |
| parent | 55cb0a60880baf74636f563ee66695a5466a10f9 (diff) | |
Add tests for findPartPaths
Diffstat (limited to 'src/test/java')
| -rw-r--r-- | src/test/java/org/zwobble/mammoth/tests/docx/DocumentReaderTests.java | 36 |
1 files changed, 36 insertions, 0 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 cfcc4e9..ddccd9c 100644 --- a/src/test/java/org/zwobble/mammoth/tests/docx/DocumentReaderTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/docx/DocumentReaderTests.java @@ -1,5 +1,6 @@ package org.zwobble.mammoth.tests.docx; +import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import org.zwobble.mammoth.internal.archives.Archive; import org.zwobble.mammoth.internal.archives.InMemoryArchive; @@ -82,4 +83,39 @@ public class DocumentReaderTests { ); assertThat(exception.getMessage(), equalTo("java.io.IOException: Could not find main document part. Are you sure this is a valid .docx file?")); } + + @Nested + public class PartPathTests { + @Test + public void mainDocumentPartIsFoundUsingPackageRelationships() { + InMemoryArchive archive = InMemoryArchive.fromStrings(map( + "word/document2.xml", " ", + "_rels/.rels", XmlWriter.toString( + element("Relationships", list( + element("Relationship", map( + "Id", "rId1", + "Target", "/word/document2.xml", + "Type", "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" + )) + )), + relationshipsNamespaces + ) + )); + + DocumentReader.PartPaths partPaths = DocumentReader.findPartPaths(archive); + + assertThat(partPaths.getMainDocument(), equalTo("word/document2.xml")); + } + + @Test + public void whenRelationshipForMainDocumentCannotBeFoundThenFallbackIsUsed() { + InMemoryArchive archive = InMemoryArchive.fromStrings(map( + "word/document.xml", " " + )); + + DocumentReader.PartPaths partPaths = DocumentReader.findPartPaths(archive); + + assertThat(partPaths.getMainDocument(), equalTo("word/document.xml")); + } + } } |
