diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-02-13 18:18:33 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-02-13 18:18:33 +0000 |
| commit | a431972f98d98114dc9a5a65a3fbaf68967a8161 (patch) | |
| tree | 5a4e6f29a884ca1091b5a8f4d5c5a4f1558b2233 /src/test/java/org/zwobble/mammoth | |
| parent | cfff129846046a2549f8c78f6de458b9f4183f43 (diff) | |
Add result objects
Diffstat (limited to 'src/test/java/org/zwobble/mammoth')
4 files changed, 41 insertions, 28 deletions
diff --git a/src/test/java/org/zwobble/mammoth/tests/MammothTests.java b/src/test/java/org/zwobble/mammoth/tests/MammothTests.java index 3bbc3e9..7966cee 100644 --- a/src/test/java/org/zwobble/mammoth/tests/MammothTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/MammothTests.java @@ -1,27 +1,31 @@ package org.zwobble.mammoth.tests; -import java.io.File; - import org.junit.Test; import org.zwobble.mammoth.Mammoth; +import org.zwobble.mammoth.Result; + +import java.io.File; -import static org.hamcrest.core.Is.is; import static org.junit.Assert.assertThat; +import static org.zwobble.mammoth.Result.success; +import static org.zwobble.mammoth.tests.DeepReflectionMatcher.deepEquals; public class MammothTests { @Test public void emptyParagraphsAreIgnoredByDefault() { - assertThat(convertToHtml("empty.docx"), is("")); + assertThat( + convertToHtml("empty.docx"), + deepEquals(success(""))); } @Test public void docxContainingOneParagraphIsConvertedToSingleParagraphElement() { assertThat( convertToHtml("single-paragraph.docx"), - is("<p>Walking on imported air</p>")); + deepEquals(success("<p>Walking on imported air</p>"))); } - private String convertToHtml(String name) { + private Result<String> convertToHtml(String name) { File file = TestData.file(name); return Mammoth.convertToHtml(file); } 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 1faaf98..3506e57 100644 --- a/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java @@ -3,6 +3,7 @@ package org.zwobble.mammoth.tests.docx; import com.natpryce.makeiteasy.Maker; import org.hamcrest.Matcher; import org.junit.Test; +import org.zwobble.mammoth.Result; import org.zwobble.mammoth.documents.*; import org.zwobble.mammoth.docx.BodyXmlReader; import org.zwobble.mammoth.docx.Numbering; @@ -22,9 +23,7 @@ import static org.hamcrest.Matchers.hasProperty; import static org.zwobble.mammoth.tests.DeepReflectionMatcher.deepEquals; import static org.zwobble.mammoth.tests.documents.DocumentElementMakers.CHILDREN; import static org.zwobble.mammoth.tests.documents.DocumentElementMakers.PARAGRAPH; -import static org.zwobble.mammoth.tests.docx.BodyXmlReaderMakers.NUMBERING; -import static org.zwobble.mammoth.tests.docx.BodyXmlReaderMakers.STYLES; -import static org.zwobble.mammoth.tests.docx.BodyXmlReaderMakers.bodyReader; +import static org.zwobble.mammoth.tests.docx.BodyXmlReaderMakers.*; import static org.zwobble.mammoth.util.MammothLists.list; import static org.zwobble.mammoth.util.MammothMaps.map; import static org.zwobble.mammoth.xml.XmlNodes.element; @@ -34,14 +33,14 @@ public class BodyXmlTests { @Test public void textFromTextElementIsRead() { XmlElement element = textXml("Hello!"); - assertThat(read(a(bodyReader), element), isTextElement("Hello!")); + assertThat(readSuccess(a(bodyReader), element), isTextElement("Hello!")); } @Test public void canReadTextWithinRun() { XmlElement element = runXml(list(textXml("Hello!"))); assertThat( - read(a(bodyReader), element), + readSuccess(a(bodyReader), element), isRun(run(text("Hello!")))); } @@ -49,7 +48,7 @@ public class BodyXmlTests { public void canReadTextWithinParagraph() { XmlElement element = paragraphXml(list(runXml(list(textXml("Hello!"))))); assertThat( - read(a(bodyReader), element), + readSuccess(a(bodyReader), element), isParagraph(make(a(PARAGRAPH, with(CHILDREN, list(run(text("Hello!")))))))); } @@ -57,7 +56,7 @@ public class BodyXmlTests { public void paragraphHasNoStyleIfItHasNoProperties() { XmlElement element = paragraphXml(); assertThat( - read(a(bodyReader), element), + readSuccess(a(bodyReader), element), hasStyle(Optional.empty())); } @@ -72,7 +71,7 @@ public class BodyXmlTests { map("Heading1", style), map()); assertThat( - read(a(bodyReader, with(STYLES, styles)), element), + readSuccess(a(bodyReader, with(STYLES, styles)), element), hasStyle(Optional.of(style))); } @@ -83,7 +82,7 @@ public class BodyXmlTests { element("w:pPr", list( element("w:pStyle", map("w:val", "Heading1")))))); assertThat( - read(a(bodyReader), element), + readSuccess(a(bodyReader), element), hasStyle(Optional.of(new Style("Heading1", Optional.empty())))); } @@ -91,7 +90,7 @@ public class BodyXmlTests { public void paragraphHasNoNumberingIfItHasNoNumberingProperties() { XmlElement element = paragraphXml(); assertThat( - read(a(bodyReader), element), + readSuccess(a(bodyReader), element), hasNumbering(Optional.empty())); } @@ -106,7 +105,7 @@ public class BodyXmlTests { Numbering numbering = new Numbering(map("42", map("1", NumberingLevel.ordered("1")))); assertThat( - read(a(bodyReader, with(NUMBERING, numbering)), element), + readSuccess(a(bodyReader, with(NUMBERING, numbering)), element), hasNumbering(NumberingLevel.ordered("1"))); } @@ -121,7 +120,7 @@ public class BodyXmlTests { Numbering numbering = new Numbering(map("42", map("1", NumberingLevel.ordered("1")))); assertThat( - read(a(bodyReader, with(NUMBERING, numbering)), element), + readSuccess(a(bodyReader, with(NUMBERING, numbering)), element), hasNumbering(Optional.empty())); } @@ -136,12 +135,18 @@ public class BodyXmlTests { Numbering numbering = new Numbering(map("42", map("1", NumberingLevel.ordered("1")))); assertThat( - read(a(bodyReader, with(NUMBERING, numbering)), element), + readSuccess(a(bodyReader, with(NUMBERING, numbering)), element), hasNumbering(Optional.empty())); } - private static DocumentElement read(Maker<BodyXmlReader> reader, XmlElement element) { - return reader.make().readElement(element).get(0); + private static DocumentElement readSuccess(Maker<BodyXmlReader> reader, XmlElement element) { + // TODO: assert no warnings when they get added + return read(reader, element).getValue(); + } + + private static Result<DocumentElement> read(Maker<BodyXmlReader> reader, XmlElement element) { + return reader.make().readElement(element).toResult() + .map(elements -> elements.get(0)); } private XmlElement paragraphXml() { diff --git a/src/test/java/org/zwobble/mammoth/tests/docx/DocumentXmlTests.java b/src/test/java/org/zwobble/mammoth/tests/docx/DocumentXmlTests.java index 0f547a8..c98061e 100644 --- a/src/test/java/org/zwobble/mammoth/tests/docx/DocumentXmlTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/docx/DocumentXmlTests.java @@ -1,6 +1,7 @@ package org.zwobble.mammoth.tests.docx; import org.junit.Test; +import org.zwobble.mammoth.Result; import org.zwobble.mammoth.documents.Document; import org.zwobble.mammoth.documents.Run; import org.zwobble.mammoth.documents.Text; @@ -11,6 +12,7 @@ import org.zwobble.mammoth.xml.XmlNodes; import static com.natpryce.makeiteasy.MakeItEasy.*; import static org.hamcrest.MatcherAssert.assertThat; +import static org.zwobble.mammoth.Result.success; import static org.zwobble.mammoth.tests.DeepReflectionMatcher.deepEquals; import static org.zwobble.mammoth.tests.documents.DocumentElementMakers.CHILDREN; import static org.zwobble.mammoth.tests.documents.DocumentElementMakers.PARAGRAPH; @@ -29,13 +31,13 @@ public class DocumentXmlTests { element("w:t", list( XmlNodes.text("Hello!"))))))))))); - Document document = new DocumentXmlReader(bodyReader).readElement(documentElement); + Result<Document> document = new DocumentXmlReader(bodyReader).readElement(documentElement); assertThat( document, - deepEquals(new Document(list( + deepEquals(success(new Document(list( make(a(PARAGRAPH, with(CHILDREN, list( new Run(list( - new Text("Hello!"))))))))))); + new Text("Hello!")))))))))))); } } diff --git a/src/test/java/org/zwobble/mammoth/tests/docx/NotesXmlReaderTests.java b/src/test/java/org/zwobble/mammoth/tests/docx/NotesXmlReaderTests.java index b8ada2e..d18cbe3 100644 --- a/src/test/java/org/zwobble/mammoth/tests/docx/NotesXmlReaderTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/docx/NotesXmlReaderTests.java @@ -1,6 +1,7 @@ package org.zwobble.mammoth.tests.docx; import org.junit.Test; +import org.zwobble.mammoth.Result; import org.zwobble.mammoth.documents.Note; import org.zwobble.mammoth.docx.BodyXmlReader; import org.zwobble.mammoth.docx.NotesXmlReader; @@ -11,6 +12,7 @@ import java.util.List; import static com.natpryce.makeiteasy.MakeItEasy.a; import static com.natpryce.makeiteasy.MakeItEasy.make; import static org.hamcrest.MatcherAssert.assertThat; +import static org.zwobble.mammoth.Result.success; import static org.zwobble.mammoth.tests.DeepReflectionMatcher.deepEquals; import static org.zwobble.mammoth.tests.documents.DocumentElementMakers.PARAGRAPH; import static org.zwobble.mammoth.util.MammothLists.list; @@ -27,11 +29,11 @@ public class NotesXmlReaderTests { element("w:p"))))); NotesXmlReader reader = new NotesXmlReader(bodyReader, "footnote"); - List<Note> notes = reader.readElement(element); + Result<List<Note>> notes = reader.readElement(element); assertThat( notes, - deepEquals(list(new Note("1", list(make(a(PARAGRAPH))))))); + deepEquals(success(list(new Note("1", list(make(a(PARAGRAPH)))))))); } @Test @@ -50,8 +52,8 @@ public class NotesXmlReaderTests { element("w:p"))))); NotesXmlReader reader = new NotesXmlReader(bodyReader, "footnote"); - List<Note> notes = reader.readElement(element); + Result<List<Note>> notes = reader.readElement(element); - assertThat(notes, deepEquals(list())); + assertThat(notes, deepEquals(success(list()))); } } |
