diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-02-14 19:05:12 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-02-14 19:05:12 +0000 |
| commit | 18eeece582566980eb01f86e89763cb0af0455da (patch) | |
| tree | 2b1678a83c104af7f8575d362721eadaffb728b9 /src | |
| parent | 22c3592fb5fa5d79bd4cb6285a7fd8c61a493e9f (diff) | |
Add force writes to table cells
Diffstat (limited to 'src')
3 files changed, 15 insertions, 5 deletions
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<HtmlNode> 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 <T> List<T> cons(T head, Iterable<T> tail) { + return concat(list(head), tail); + } + + private static <T> List<T> concat(Iterable<T> first, Iterable<T> second) { + return ImmutableList.copyOf(Iterables.concat(first, second)); + } + public static <T, R> List<R> eagerFlatMap(Iterable<T> iterable, Function<T, Iterable<R>> 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 |
