diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-11-28 17:04:17 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-11-28 17:04:17 +0000 |
| commit | 298cabc40864894bc156365a9257921f585079ab (patch) | |
| tree | d27e94bd5f04565a760126d2b677433f06086730 /src | |
| parent | 709cadaa82093ff8cde6239ccdeebee6894d55ea (diff) | |
Allow mapping of column breaks
Diffstat (limited to 'src')
3 files changed, 12 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/BreakMatcher.java b/src/main/java/org/zwobble/mammoth/internal/styles/BreakMatcher.java index a32feda..33abe86 100644 --- a/src/main/java/org/zwobble/mammoth/internal/styles/BreakMatcher.java +++ b/src/main/java/org/zwobble/mammoth/internal/styles/BreakMatcher.java @@ -5,6 +5,7 @@ import org.zwobble.mammoth.internal.documents.Break; public class BreakMatcher implements DocumentElementMatcher<Break> { public static final BreakMatcher LINE_BREAK = new BreakMatcher(Break.Type.LINE); public static final BreakMatcher PAGE_BREAK = new BreakMatcher(Break.Type.PAGE); + public static final BreakMatcher COLUMN_BREAK = new BreakMatcher(Break.Type.COLUMN); private final Break.Type breakType; diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/DocumentMatcherParser.java b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/DocumentMatcherParser.java index 7586393..56a10da 100644 --- a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/DocumentMatcherParser.java +++ b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/DocumentMatcherParser.java @@ -109,6 +109,8 @@ public class DocumentMatcherParser { return BreakMatcher.LINE_BREAK; case "page": return BreakMatcher.PAGE_BREAK; + case "column": + return BreakMatcher.COLUMN_BREAK; default: throw new LineParseException(stringToken, "Unrecognised break type: " + typeName); } diff --git a/src/test/java/org/zwobble/mammoth/tests/styles/parsing/StyleMapParserTests.java b/src/test/java/org/zwobble/mammoth/tests/styles/parsing/StyleMapParserTests.java index 5456cb8..89045a1 100644 --- a/src/test/java/org/zwobble/mammoth/tests/styles/parsing/StyleMapParserTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/styles/parsing/StyleMapParserTests.java @@ -75,6 +75,15 @@ public class StyleMapParserTests { } @Test + public void canMapColumnBreaks() { + StyleMap styleMap = StyleMapParser.parse("br[type='column'] => div"); + StyleMap expectedStyleMap = StyleMap.builder() + .mapBreak(BreakMatcher.COLUMN_BREAK, HtmlPath.collapsibleElement("div")) + .build(); + assertThat(styleMap, deepEquals(expectedStyleMap)); + } + + @Test public void blankLinesAreIgnored() { StyleMap styleMap = StyleMapParser.parse("\n\n \n\np =>\n\r\n"); assertThat(styleMap, deepEquals(StyleMap.builder().mapParagraph(ParagraphMatcher.ANY, HtmlPath.EMPTY).build())); |
