From ae5ded5955978970cbe992fd41628eb2cb3d4b23 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sun, 14 Feb 2016 11:19:05 +0000 Subject: Wrap bold runs in --- src/main/java/org/zwobble/mammoth/DocumentConverter.java | 6 +++++- .../org/zwobble/mammoth/tests/DocumentConverterTests.java | 9 +++++++++ .../mammoth/tests/documents/DocumentElementMakers.java | 12 ++++++++---- 3 files changed, 22 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 fb3e4a2..854bc32 100644 --- a/src/main/java/org/zwobble/mammoth/DocumentConverter.java +++ b/src/main/java/org/zwobble/mammoth/DocumentConverter.java @@ -34,7 +34,11 @@ public class DocumentConverter { @Override public List visit(Run run) { - return convertChildrenToHtml(run); + List nodes = convertChildrenToHtml(run); + if (run.isBold()) { + nodes = list(Html.element("strong", nodes)); + } + return nodes; } @Override diff --git a/src/test/java/org/zwobble/mammoth/tests/DocumentConverterTests.java b/src/test/java/org/zwobble/mammoth/tests/DocumentConverterTests.java index 6152822..0a35512 100644 --- a/src/test/java/org/zwobble/mammoth/tests/DocumentConverterTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/DocumentConverterTests.java @@ -4,6 +4,7 @@ import org.junit.Test; import org.zwobble.mammoth.DocumentConverter; import org.zwobble.mammoth.documents.Document; import org.zwobble.mammoth.documents.DocumentElement; +import org.zwobble.mammoth.documents.Text; import org.zwobble.mammoth.html.Html; import org.zwobble.mammoth.html.HtmlNode; @@ -35,6 +36,14 @@ public class DocumentConverterTests { Html.element("p", list(Html.text("there")))))); } + @Test + public void boldRunsAreWrappedInStrongTags() { + assertThat( + convertToHtml(make(a(RUN, with(BOLD, true), with(CHILDREN, list(new Text("Hello")))))), + + deepEquals(list(Html.element("strong", list(Html.text("Hello")))))); + } + private List convertToHtml(DocumentElement element) { return DocumentConverter.convertToHtml(element); diff --git a/src/test/java/org/zwobble/mammoth/tests/documents/DocumentElementMakers.java b/src/test/java/org/zwobble/mammoth/tests/documents/DocumentElementMakers.java index 396a95a..6e9409f 100644 --- a/src/test/java/org/zwobble/mammoth/tests/documents/DocumentElementMakers.java +++ b/src/test/java/org/zwobble/mammoth/tests/documents/DocumentElementMakers.java @@ -14,6 +14,10 @@ import static com.natpryce.makeiteasy.Property.newProperty; import static org.zwobble.mammoth.util.MammothLists.list; public class DocumentElementMakers { + public static final Property BOLD = newProperty(); + public static final Property ITALIC = newProperty(); + public static final Property UNDERLINE = newProperty(); + public static final Property STRIKETHROUGH = newProperty(); public static final Property> CHILDREN = newProperty(); public static final Instantiator PARAGRAPH = @@ -24,10 +28,10 @@ public class DocumentElementMakers { public static final Instantiator RUN = propertyLookup -> new Run( - false, - false, - false, - false, + propertyLookup.valueOf(BOLD, false), + propertyLookup.valueOf(ITALIC, false), + propertyLookup.valueOf(UNDERLINE, false), + propertyLookup.valueOf(STRIKETHROUGH, false), VerticalAlignment.BASELINE, Optional.empty(), propertyLookup.valueOf(CHILDREN, list())); -- cgit v1.2.3