From 18eeece582566980eb01f86e89763cb0af0455da Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sun, 14 Feb 2016 19:05:12 +0000 Subject: Add force writes to table cells --- src/main/java/org/zwobble/mammoth/DocumentConverter.java | 4 +++- src/main/java/org/zwobble/mammoth/util/MammothLists.java | 8 ++++++++ .../java/org/zwobble/mammoth/tests/DocumentConverterTests.java | 8 ++++---- 3 files changed, 15 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/main/java/org/zwobble/mammoth/DocumentConverter.java b/src/main/java/org/zwobble/mammoth/DocumentConverter.java index 090b27b..089020b 100644 --- a/src/main/java/org/zwobble/mammoth/DocumentConverter.java +++ b/src/main/java/org/zwobble/mammoth/DocumentConverter.java @@ -7,6 +7,7 @@ import com.google.common.io.ByteStreams; import org.zwobble.mammoth.documents.*; import org.zwobble.mammoth.html.Html; import org.zwobble.mammoth.html.HtmlNode; +import org.zwobble.mammoth.util.MammothLists; import java.io.IOException; import java.util.ArrayList; @@ -138,7 +139,8 @@ public class DocumentConverter { @Override public List visit(TableCell tableCell) { - return list(Html.element("td", convertChildrenToHtml(tableCell))); + return list(Html.element("td", + MammothLists.cons(Html.FORCE_WRITE, convertChildrenToHtml(tableCell)))); } @Override diff --git a/src/main/java/org/zwobble/mammoth/util/MammothLists.java b/src/main/java/org/zwobble/mammoth/util/MammothLists.java index d6d1136..5a2e06b 100644 --- a/src/main/java/org/zwobble/mammoth/util/MammothLists.java +++ b/src/main/java/org/zwobble/mammoth/util/MammothLists.java @@ -20,6 +20,14 @@ public class MammothLists { return ImmutableList.of(value1, value2); } + public static List cons(T head, Iterable tail) { + return concat(list(head), tail); + } + + private static List concat(Iterable first, Iterable second) { + return ImmutableList.copyOf(Iterables.concat(first, second)); + } + public static List eagerFlatMap(Iterable iterable, Function> function) { return ImmutableList.copyOf(Iterables.concat(Iterables.transform(iterable, function))); } diff --git a/src/test/java/org/zwobble/mammoth/tests/DocumentConverterTests.java b/src/test/java/org/zwobble/mammoth/tests/DocumentConverterTests.java index 96dc365..4801767 100644 --- a/src/test/java/org/zwobble/mammoth/tests/DocumentConverterTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/DocumentConverterTests.java @@ -113,11 +113,11 @@ public class DocumentConverterTests { deepEquals(list(Html.element("table", list( Html.element("tr", list( - Html.element("td", list(Html.element("p", list(Html.text("Top left"))))), - Html.element("td", list(Html.element("p", list(Html.text("Top right"))))))), + Html.element("td", list(Html.FORCE_WRITE, Html.element("p", list(Html.text("Top left"))))), + Html.element("td", list(Html.FORCE_WRITE, Html.element("p", list(Html.text("Top right"))))))), Html.element("tr", list( - Html.element("td", list(Html.element("p", list(Html.text("Bottom left"))))), - Html.element("td", list(Html.element("p", list(Html.text("Bottom right")))))))))))); + Html.element("td", list(Html.FORCE_WRITE, Html.element("p", list(Html.text("Bottom left"))))), + Html.element("td", list(Html.FORCE_WRITE, Html.element("p", list(Html.text("Bottom right")))))))))))); } @Test -- cgit v1.2.3