summaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-02-13 18:18:33 +0000
committerMichael Williamson <mike@zwobble.org>2016-02-13 18:18:33 +0000
commita431972f98d98114dc9a5a65a3fbaf68967a8161 (patch)
tree5a4e6f29a884ca1091b5a8f4d5c5a4f1558b2233 /src/test/java
parentcfff129846046a2549f8c78f6de458b9f4183f43 (diff)
Add result objects
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/zwobble/mammoth/tests/MammothTests.java16
-rw-r--r--src/test/java/org/zwobble/mammoth/tests/docx/BodyXmlTests.java35
-rw-r--r--src/test/java/org/zwobble/mammoth/tests/docx/DocumentXmlTests.java8
-rw-r--r--src/test/java/org/zwobble/mammoth/tests/docx/NotesXmlReaderTests.java10
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())));
}
}