From b7bdb1aea36e5a57db5ac3dd7a0bfe9538591ddd Mon Sep 17 00:00:00 2001 From: Hugo de Paix de Coeur Date: Fri, 26 Feb 2016 16:14:35 +0100 Subject: [PATCH] Added new block methods (supporting title and admonitions) Refactored listing() and method() methods Does not flush buffer anymore when writeToFile --- .../builder/AbstractMarkupDocBuilder.java | 64 ++++++++-------- .../markup/builder/MarkupAdmonition.java | 9 +++ .../markup/builder/MarkupBlockStyle.java | 9 +++ .../markup/builder/MarkupDocBuilder.java | 38 ++++++++-- .../builder/asciidoc/AsciiDocBuilder.java | 61 +++++++++------ .../builder/markdown/MarkdownBuilder.java | 74 +++++++++++-------- .../markup/builder/MarkupDocBuilderTest.java | 18 ++++- 7 files changed, 180 insertions(+), 93 deletions(-) create mode 100644 src/main/java/io/github/robwin/markup/builder/MarkupAdmonition.java create mode 100644 src/main/java/io/github/robwin/markup/builder/MarkupBlockStyle.java diff --git a/src/main/java/io/github/robwin/markup/builder/AbstractMarkupDocBuilder.java b/src/main/java/io/github/robwin/markup/builder/AbstractMarkupDocBuilder.java index 9623dc53..9f574619 100644 --- a/src/main/java/io/github/robwin/markup/builder/AbstractMarkupDocBuilder.java +++ b/src/main/java/io/github/robwin/markup/builder/AbstractMarkupDocBuilder.java @@ -70,11 +70,11 @@ public abstract class AbstractMarkupDocBuilder implements MarkupDocBuilder { return this.anchorPrefix; } - protected void documentTitle(Markup markup, String title){ + protected void documentTitle(Markup markup, String title) { documentBuilder.append(markup).append(title).append(newLine).append(newLine); } - protected void sectionTitleLevel1(Markup markup, String title, String anchor){ + protected void sectionTitleLevel1(Markup markup, String title, String anchor) { documentBuilder.append(newLine); if (anchor != null) anchor(anchor).newLine(); @@ -86,7 +86,7 @@ public abstract class AbstractMarkupDocBuilder implements MarkupDocBuilder { return sectionTitleWithAnchorLevel1(title, title); } - protected void sectionTitleLevel2(Markup markup, String title, String anchor){ + protected void sectionTitleLevel2(Markup markup, String title, String anchor) { documentBuilder.append(newLine); if (anchor != null) anchor(anchor).newLine(); @@ -98,7 +98,7 @@ public abstract class AbstractMarkupDocBuilder implements MarkupDocBuilder { return sectionTitleWithAnchorLevel2(title, title); } - protected void sectionTitleLevel3(Markup markup, String title, String anchor){ + protected void sectionTitleLevel3(Markup markup, String title, String anchor) { documentBuilder.append(newLine); if (anchor != null) anchor(anchor).newLine(); @@ -110,7 +110,7 @@ public abstract class AbstractMarkupDocBuilder implements MarkupDocBuilder { return sectionTitleWithAnchorLevel3(title, title); } - protected void sectionTitleLevel4(Markup markup, String title, String anchor){ + protected void sectionTitleLevel4(Markup markup, String title, String anchor) { documentBuilder.append(newLine); if (anchor != null) anchor(anchor).newLine(); @@ -123,61 +123,68 @@ public abstract class AbstractMarkupDocBuilder implements MarkupDocBuilder { } @Override - public MarkupDocBuilder textLine(String text, boolean forceLineBreak){ + public MarkupDocBuilder textLine(String text, boolean forceLineBreak) { text(text); newLine(forceLineBreak); return this; } @Override - public MarkupDocBuilder textLine(String text){ + public MarkupDocBuilder textLine(String text) { textLine(text, LINE_BREAK_DEFAULT); return this; } @Override - public MarkupDocBuilder text(String text){ + public MarkupDocBuilder text(String text) { documentBuilder.append(text); return this; } - protected void paragraph(Markup markup, String text){ + protected void paragraph(Markup markup, String text) { documentBuilder.append(markup).append(newLine).append(text).append(newLine).append(newLine); } - protected void listing(Markup markup, String text){ - delimitedBlockText(markup, text); + @Override + public MarkupDocBuilder block(String text, MarkupBlockStyle style) { + return block(text, style, null, null); } - protected void delimitedBlockText(Markup markup, String text){ - documentBuilder.append(markup).append(newLine).append(text).append(newLine).append(markup).append(newLine).append(newLine); + @Override + public MarkupDocBuilder listing(String text) { + return listing(text, null); } - protected void delimitedTextWithoutLineBreaks(Markup markup, String text){ + protected void delimitedBlockText(Markup markup, String text) { + if (markup != null) + documentBuilder.append(markup).append(newLine); + documentBuilder.append(text).append(newLine); + if (markup != null) + documentBuilder.append(markup).append(newLine); + documentBuilder.append(newLine); + } + + protected void delimitedTextWithoutLineBreaks(Markup markup, String text) { documentBuilder.append(markup).append(text).append(markup); } - protected void preserveLineBreaks(Markup markup){ - documentBuilder.append(markup).append(newLine); - } - - protected void boldText(Markup markup, String text){ + protected void boldText(Markup markup, String text) { delimitedTextWithoutLineBreaks(markup, text); } @Override - public MarkupDocBuilder boldTextLine(String text, boolean forceLineBreak){ + public MarkupDocBuilder boldTextLine(String text, boolean forceLineBreak) { boldText(text); newLine(forceLineBreak); return this; } @Override - public MarkupDocBuilder boldTextLine(String text){ + public MarkupDocBuilder boldTextLine(String text) { return boldTextLine(text, LINE_BREAK_DEFAULT); } - protected void italicText(Markup markup, String text){ + protected void italicText(Markup markup, String text) { delimitedTextWithoutLineBreaks(markup, text); } @@ -193,9 +200,9 @@ public abstract class AbstractMarkupDocBuilder implements MarkupDocBuilder { return italicTextLine(text, LINE_BREAK_DEFAULT); } - protected void unorderedList(Markup markup, List list){ + protected void unorderedList(Markup markup, List list) { documentBuilder.append(newLine); - for(String listEntry : list){ + for (String listEntry : list) { unorderedListItem(markup, listEntry); } documentBuilder.append(newLine); @@ -258,14 +265,14 @@ public abstract class AbstractMarkupDocBuilder implements MarkupDocBuilder { return crossReference(null, anchor, null); } - protected void newLine(Markup markup, boolean forceLineBreak){ + protected void newLine(Markup markup, boolean forceLineBreak) { if (forceLineBreak) documentBuilder.append(markup); documentBuilder.append(newLine); } @Override - public MarkupDocBuilder newLine(){ + public MarkupDocBuilder newLine() { newLine(LINE_BREAK_DEFAULT); return this; } @@ -316,7 +323,7 @@ public abstract class AbstractMarkupDocBuilder implements MarkupDocBuilder { } @Override - public String toString(){ + public String toString() { return documentBuilder.toString(); } @@ -336,14 +343,13 @@ public abstract class AbstractMarkupDocBuilder implements MarkupDocBuilder { public void writeToFileWithoutExtension(Path file, Charset charset) throws IOException { Files.createDirectories(file.getParent()); try (BufferedWriter writer = Files.newBufferedWriter(file, charset)) { - writer.write(documentBuilder.toString()); + writer.write(toString()); writer.write(newLine); writer.write(newLine); } if (logger.isInfoEnabled()) { logger.info("{} was written to: {}", file); } - documentBuilder = new StringBuilder(); } @Override diff --git a/src/main/java/io/github/robwin/markup/builder/MarkupAdmonition.java b/src/main/java/io/github/robwin/markup/builder/MarkupAdmonition.java new file mode 100644 index 00000000..1eeab054 --- /dev/null +++ b/src/main/java/io/github/robwin/markup/builder/MarkupAdmonition.java @@ -0,0 +1,9 @@ +package io.github.robwin.markup.builder; + +public enum MarkupAdmonition { + NOTE, + TIP, + IMPORTANT, + CAUTION, + WARNING +} diff --git a/src/main/java/io/github/robwin/markup/builder/MarkupBlockStyle.java b/src/main/java/io/github/robwin/markup/builder/MarkupBlockStyle.java new file mode 100644 index 00000000..6f243523 --- /dev/null +++ b/src/main/java/io/github/robwin/markup/builder/MarkupBlockStyle.java @@ -0,0 +1,9 @@ +package io.github.robwin.markup.builder; + +public enum MarkupBlockStyle { + SIDEBAR, + EXAMPLE, + LITERAL, + LISTING, + PASSTHROUGH +} diff --git a/src/main/java/io/github/robwin/markup/builder/MarkupDocBuilder.java b/src/main/java/io/github/robwin/markup/builder/MarkupDocBuilder.java index 38df0769..bf301c2f 100644 --- a/src/main/java/io/github/robwin/markup/builder/MarkupDocBuilder.java +++ b/src/main/java/io/github/robwin/markup/builder/MarkupDocBuilder.java @@ -181,8 +181,30 @@ public interface MarkupDocBuilder { MarkupDocBuilder paragraph(String text); /** - * Builds a literal text block.
- * Line breaks are respected. + * Builds a block of {@code text} with specified {@code style}. + * + * @param text text + * @param style block style + * @param title an optional title for the block. No title if null. + * @param admonition an optional admonition for the block. No admonition if null. + * @return this builder + */ + MarkupDocBuilder block(String text, MarkupBlockStyle style, String title, MarkupAdmonition admonition); + + /** + * Builds a block of {@code text} with specified {@code style}.
+ * This is an alias for {@link #block(String, MarkupBlockStyle, String, MarkupAdmonition) block(String, MarkupBlockStyle, null, null)}. + * + * @param text text + * @param style block style + * @return this builder + */ + MarkupDocBuilder block(String text, MarkupBlockStyle style); + + /** + * Builds a listing text block.
+ * This is an alias for {@link #listing(String, String) listing(String, null)}. + * This is an alias for {@link #block(String, MarkupBlockStyle, String, MarkupAdmonition) block(String, MarkupBlockStyle.LISTING, null, null)}. * * @param text multi-line text * @return this builder @@ -194,10 +216,10 @@ public interface MarkupDocBuilder { * Line breaks are respected. * * @param text multi-line text - * @param language source code language + * @param language source code language. Simple listing if {@code language} == null. * @return this builder */ - MarkupDocBuilder source(String text, String language); + MarkupDocBuilder listing(String text, String language); /** * Builds a bold text line.
@@ -453,7 +475,7 @@ public interface MarkupDocBuilder { Path addfileExtension(Path file); /** - * Writes the content of the builder to a file and clears the builder.
+ * Writes the content of the builder to a file.
* An extension will be dynamically added to fileName depending on the markup language.
* Use {@link #writeToFile(Path, Charset)} instead. * @@ -466,7 +488,7 @@ public interface MarkupDocBuilder { void writeToFile(String directory, String fileName, Charset charset) throws IOException; /** - * Writes the content of the builder to a file and clears the builder.
+ * Writes the content of the builder to a file.
* Use {@link #writeToFileWithoutExtension(Path, Charset)} instead. * * @param directory the directory where the generated file should be stored @@ -478,7 +500,7 @@ public interface MarkupDocBuilder { void writeToFileWithoutExtension(String directory, String fileName, Charset charset) throws IOException; /** - * Writes the content of the builder to a file and clears the builder.
+ * Writes the content of the builder to a file.
* An extension will be dynamically added to fileName depending on the markup language. * * @param file the generated file without extension @@ -488,7 +510,7 @@ public interface MarkupDocBuilder { void writeToFile(Path file, Charset charset) throws IOException; /** - * Writes the content of the builder to a file and clears the builder. + * Writes the content of the builder to a file. * * @param file the generated file * @param charset the the charset to use for encoding diff --git a/src/main/java/io/github/robwin/markup/builder/asciidoc/AsciiDocBuilder.java b/src/main/java/io/github/robwin/markup/builder/asciidoc/AsciiDocBuilder.java index 418dee57..a4d0dbfa 100644 --- a/src/main/java/io/github/robwin/markup/builder/asciidoc/AsciiDocBuilder.java +++ b/src/main/java/io/github/robwin/markup/builder/asciidoc/AsciiDocBuilder.java @@ -20,18 +20,13 @@ package io.github.robwin.markup.builder.asciidoc; import com.google.common.base.Function; import com.google.common.collect.Collections2; -import io.github.robwin.markup.builder.AbstractMarkupDocBuilder; -import io.github.robwin.markup.builder.MarkupDocBuilder; -import io.github.robwin.markup.builder.MarkupLanguage; -import io.github.robwin.markup.builder.MarkupTableColumn; +import io.github.robwin.markup.builder.*; import org.apache.commons.collections.CollectionUtils; import java.io.File; import java.io.IOException; import java.io.Reader; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; +import java.util.*; import static org.apache.commons.lang3.StringUtils.*; @@ -40,19 +35,27 @@ import static org.apache.commons.lang3.StringUtils.*; */ public class AsciiDocBuilder extends AbstractMarkupDocBuilder { + private static final Map BLOCK_STYLE = new HashMap() {{ + put(MarkupBlockStyle.EXAMPLE, "===="); + put(MarkupBlockStyle.LISTING, "----"); + put(MarkupBlockStyle.LITERAL, "...."); + put(MarkupBlockStyle.PASSTHROUGH, "++++"); + put(MarkupBlockStyle.SIDEBAR, "****"); + }}; + @Override public MarkupDocBuilder copy() { return new AsciiDocBuilder().withAnchorPrefix(anchorPrefix); } @Override - public MarkupDocBuilder documentTitle(String title){ + public MarkupDocBuilder documentTitle(String title) { documentTitle(AsciiDoc.DOCUMENT_TITLE, title); return this; } @Override - public MarkupDocBuilder sectionTitleLevel1(String title){ + public MarkupDocBuilder sectionTitleLevel1(String title) { sectionTitleLevel1(AsciiDoc.SECTION_TITLE_LEVEL1, title, null); return this; } @@ -64,7 +67,7 @@ public class AsciiDocBuilder extends AbstractMarkupDocBuilder { } @Override - public MarkupDocBuilder sectionTitleLevel2(String title){ + public MarkupDocBuilder sectionTitleLevel2(String title) { sectionTitleLevel2(AsciiDoc.SECTION_TITLE_LEVEL2, title, null); return this; } @@ -76,7 +79,7 @@ public class AsciiDocBuilder extends AbstractMarkupDocBuilder { } @Override - public MarkupDocBuilder sectionTitleLevel3(String title){ + public MarkupDocBuilder sectionTitleLevel3(String title) { sectionTitleLevel3(AsciiDoc.SECTION_TITLE_LEVEL3, title, null); return this; } @@ -88,7 +91,7 @@ public class AsciiDocBuilder extends AbstractMarkupDocBuilder { } @Override - public MarkupDocBuilder sectionTitleLevel4(String title){ + public MarkupDocBuilder sectionTitleLevel4(String title) { sectionTitleLevel4(AsciiDoc.SECTION_TITLE_LEVEL4, title, null); return this; } @@ -100,19 +103,29 @@ public class AsciiDocBuilder extends AbstractMarkupDocBuilder { } @Override - public MarkupDocBuilder paragraph(String text){ + public MarkupDocBuilder paragraph(String text) { paragraph(AsciiDoc.HARDBREAKS, text); return this; } @Override - public MarkupDocBuilder listing(String text){ - listing(AsciiDoc.LISTING, text); + public MarkupDocBuilder block(String text, final MarkupBlockStyle style, String title, MarkupAdmonition admonition) { + if (admonition != null) + documentBuilder.append("[").append(admonition).append("]").append(newLine); + if (title != null) + documentBuilder.append(".").append(title).append(newLine); + + delimitedBlockText(new Markup() { + public String toString() { + assert (BLOCK_STYLE.containsKey(style)); + return BLOCK_STYLE.get(style); + } + }, text); return this; } @Override - public MarkupDocBuilder boldText(String text){ + public MarkupDocBuilder boldText(String text) { boldText(AsciiDoc.BOLD, text); return this; } @@ -124,7 +137,7 @@ public class AsciiDocBuilder extends AbstractMarkupDocBuilder { } @Override - public MarkupDocBuilder unorderedList(List list){ + public MarkupDocBuilder unorderedList(List list) { unorderedList(AsciiDoc.LIST_ENTRY, list); return this; } @@ -136,18 +149,19 @@ public class AsciiDocBuilder extends AbstractMarkupDocBuilder { } @Override - public MarkupDocBuilder source(String text, String language){ - documentBuilder.append(String.format("[source,%s]", language)).append(newLine); - listing(AsciiDoc.LISTING, text); + public MarkupDocBuilder listing(String text, String language) { + if (language != null) + documentBuilder.append(String.format("[source,%s]", language)).append(newLine); + block(text, MarkupBlockStyle.LISTING); return this; } @Override - public MarkupDocBuilder tableWithHeaderRow(List rowsInPSV){ + public MarkupDocBuilder tableWithHeaderRow(List rowsInPSV) { newLine(); documentBuilder.append("[options=\"header\"]").append(newLine); documentBuilder.append(AsciiDoc.TABLE).append(newLine); - for(String row : rowsInPSV){ + for (String row : rowsInPSV) { documentBuilder.append(AsciiDoc.TABLE_COLUMN_DELIMITER).append(row).append(newLine); } documentBuilder.append(AsciiDoc.TABLE).append(newLine).append(newLine); @@ -218,8 +232,7 @@ public class AsciiDocBuilder extends AbstractMarkupDocBuilder { String languageStyle = col.markupSpecifiers.get(MarkupLanguage.ASCIIDOC); if (languageStyle != null && isNoneBlank(languageStyle)) { cols.add(languageStyle); - } - else { + } else { cols.add(String.valueOf(col.widthRatio)); } } diff --git a/src/main/java/io/github/robwin/markup/builder/markdown/MarkdownBuilder.java b/src/main/java/io/github/robwin/markup/builder/markdown/MarkdownBuilder.java index 3b195233..7327765b 100644 --- a/src/main/java/io/github/robwin/markup/builder/markdown/MarkdownBuilder.java +++ b/src/main/java/io/github/robwin/markup/builder/markdown/MarkdownBuilder.java @@ -20,18 +20,13 @@ package io.github.robwin.markup.builder.markdown; import com.google.common.base.Function; import com.google.common.collect.Collections2; -import io.github.robwin.markup.builder.AbstractMarkupDocBuilder; -import io.github.robwin.markup.builder.MarkupDocBuilder; -import io.github.robwin.markup.builder.MarkupTableColumn; +import io.github.robwin.markup.builder.*; import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.Validate; import java.io.IOException; import java.io.Reader; -import java.util.Arrays; -import java.util.Collection; -import java.util.List; -import java.util.regex.Pattern; +import java.util.*; import static org.apache.commons.lang3.StringUtils.defaultString; import static org.apache.commons.lang3.StringUtils.join; @@ -39,11 +34,15 @@ import static org.apache.commons.lang3.StringUtils.join; /** * @author Robert Winkler */ -public class MarkdownBuilder extends AbstractMarkupDocBuilder -{ - private static final int MAX_TITLE_LEVEL = 5; - private static final char TITLE_PREFIX = '#'; - private static Pattern TITLE_PATTERN = Pattern.compile(String.format("^%c({1,%d})( .*)$", TITLE_PREFIX, MAX_TITLE_LEVEL)); +public class MarkdownBuilder extends AbstractMarkupDocBuilder { + + private static final Map BLOCK_STYLE = new HashMap() {{ + put(MarkupBlockStyle.EXAMPLE, null); + put(MarkupBlockStyle.LISTING, Markdown.LISTING.toString()); + put(MarkupBlockStyle.LITERAL, Markdown.LISTING.toString()); + put(MarkupBlockStyle.PASSTHROUGH, null); + put(MarkupBlockStyle.SIDEBAR, null); + }}; @Override public MarkupDocBuilder copy() { @@ -51,13 +50,13 @@ public class MarkdownBuilder extends AbstractMarkupDocBuilder } @Override - public MarkupDocBuilder documentTitle(String title){ + public MarkupDocBuilder documentTitle(String title) { documentTitle(Markdown.DOCUMENT_TITLE, title); return this; } @Override - public MarkupDocBuilder sectionTitleLevel1(String title){ + public MarkupDocBuilder sectionTitleLevel1(String title) { sectionTitleLevel1(Markdown.SECTION_TITLE_LEVEL1, title, null); return this; } @@ -69,7 +68,7 @@ public class MarkdownBuilder extends AbstractMarkupDocBuilder } @Override - public MarkupDocBuilder sectionTitleLevel2(String title){ + public MarkupDocBuilder sectionTitleLevel2(String title) { sectionTitleLevel2(Markdown.SECTION_TITLE_LEVEL2, title, null); return this; } @@ -81,7 +80,7 @@ public class MarkdownBuilder extends AbstractMarkupDocBuilder } @Override - public MarkupDocBuilder sectionTitleLevel3(String title){ + public MarkupDocBuilder sectionTitleLevel3(String title) { sectionTitleLevel3(Markdown.SECTION_TITLE_LEVEL3, title, null); return this; } @@ -93,7 +92,7 @@ public class MarkdownBuilder extends AbstractMarkupDocBuilder } @Override - public MarkupDocBuilder sectionTitleLevel4(String title){ + public MarkupDocBuilder sectionTitleLevel4(String title) { sectionTitleLevel4(Markdown.SECTION_TITLE_LEVEL4, title, null); return this; } @@ -105,27 +104,42 @@ public class MarkdownBuilder extends AbstractMarkupDocBuilder } @Override - public MarkupDocBuilder paragraph(String text){ + public MarkupDocBuilder paragraph(String text) { paragraph(Markdown.HARDBREAKS, text); return this; } @Override - public MarkupDocBuilder listing(String text){ - listing(Markdown.LISTING, text); + public MarkupDocBuilder block(String text, final MarkupBlockStyle style, String title, MarkupAdmonition admonition) { + if (admonition != null) + documentBuilder.append(StringUtils.capitalize(admonition.name())).append(" : "); + if (title != null) { + if (admonition != null) + documentBuilder.append(" | "); + documentBuilder.append(title).append(" : "); + } + if (admonition != null || title != null) + documentBuilder.append(newLine); + + delimitedBlockText(new Markup() { + public String toString() { + String separator = BLOCK_STYLE.get(style); + return separator; + } + }, text); return this; } @Override - public MarkupDocBuilder source(String text, String language){ - documentBuilder.append(Markdown.LISTING).append(language).append(newLine). - append(text).append(newLine). - append(Markdown.LISTING).append(newLine).append(newLine); + public MarkupDocBuilder listing(String text, String language) { + if (language != null) + text = language + " :" + newLine + text; + block(text, MarkupBlockStyle.LISTING); return this; } @Override - public MarkupDocBuilder boldText(String text){ + public MarkupDocBuilder boldText(String text) { boldText(Markdown.BOLD, text); return this; } @@ -137,7 +151,7 @@ public class MarkdownBuilder extends AbstractMarkupDocBuilder } @Override - public MarkupDocBuilder unorderedList(List list){ + public MarkupDocBuilder unorderedList(List list) { unorderedList(Markdown.LIST_ENTRY, list); return this; } @@ -149,7 +163,7 @@ public class MarkdownBuilder extends AbstractMarkupDocBuilder } @Override - public MarkupDocBuilder tableWithHeaderRow(List rowsInPSV){ + public MarkupDocBuilder tableWithHeaderRow(List rowsInPSV) { String headersInPSV = rowsInPSV.get(0); List contentRowsInPSV = rowsInPSV.subList(1, rowsInPSV.size()); String[] headersAsArray = headersInPSV.split(String.format("\\%s", Markdown.TABLE_COLUMN_DELIMITER.toString())); @@ -163,15 +177,15 @@ public class MarkdownBuilder extends AbstractMarkupDocBuilder newLine(); // Header/Content separator documentBuilder.append(Markdown.TABLE_COLUMN_DELIMITER.toString()); - for(String header : headers){ - for(int i = 1; i<5; i++) { + for (String header : headers) { + for (int i = 1; i < 5; i++) { documentBuilder.append(Markdown.TABLE_ROW); } documentBuilder.append(Markdown.TABLE_COLUMN_DELIMITER.toString()); } newLine(); // Content - for(String contentRowInPSV : contentRowsInPSV){ + for (String contentRowInPSV : contentRowsInPSV) { documentBuilder.append(Markdown.TABLE_COLUMN_DELIMITER.toString()); documentBuilder.append(contentRowInPSV); documentBuilder.append(Markdown.TABLE_COLUMN_DELIMITER.toString()); diff --git a/src/test/java/io/github/robwin/markup/builder/MarkupDocBuilderTest.java b/src/test/java/io/github/robwin/markup/builder/MarkupDocBuilderTest.java index 2f67a6f7..92ccc647 100644 --- a/src/test/java/io/github/robwin/markup/builder/MarkupDocBuilderTest.java +++ b/src/test/java/io/github/robwin/markup/builder/MarkupDocBuilderTest.java @@ -77,7 +77,14 @@ public class MarkupDocBuilderTest { .sectionTitleWithAnchorLevel4("Section with anchor Level 4a") .paragraph("Paragraph with long text bla bla bla bla bla") .listing("Source code listing") - .source("MarkupDocBuilder builder = MarkupDocBuilders.documentBuilder(MarkupLanguage.ASCIIDOC)", "java") + .listing("MarkupDocBuilder builder = MarkupDocBuilders.documentBuilder(MarkupLanguage.MARKDOWN)", "java") + .block("Example", MarkupBlockStyle.EXAMPLE) + .block("Example", MarkupBlockStyle.EXAMPLE, "Example", null) + .block("Example", MarkupBlockStyle.EXAMPLE, null, MarkupAdmonition.IMPORTANT) + .block("Listing", MarkupBlockStyle.LISTING, null, MarkupAdmonition.CAUTION) + .block("Literal", MarkupBlockStyle.LITERAL, null, MarkupAdmonition.NOTE) + .block("Sidebar", MarkupBlockStyle.SIDEBAR, null, MarkupAdmonition.TIP) + .block("Passthrough", MarkupBlockStyle.PASSTHROUGH, null, MarkupAdmonition.WARNING) .tableWithHeaderRow(tableRowsInPSV) .table(tableCells) .tableWithColumnSpecs(tableColumns, tableCells) @@ -128,7 +135,14 @@ public class MarkupDocBuilderTest { .sectionTitleWithAnchorLevel4("Section with anchor Level 4a") .paragraph("Paragraph with long text bla bla bla bla bla") .listing("Source code listing") - .source("MarkupDocBuilder builder = MarkupDocBuilders.documentBuilder(MarkupLanguage.MARKDOWN)", "java") + .listing("MarkupDocBuilder builder = MarkupDocBuilders.documentBuilder(MarkupLanguage.MARKDOWN)", "java") + .block("Example", MarkupBlockStyle.EXAMPLE) + .block("Example", MarkupBlockStyle.EXAMPLE, "Example", null) + .block("Example", MarkupBlockStyle.EXAMPLE, null, MarkupAdmonition.IMPORTANT) + .block("Listing", MarkupBlockStyle.LISTING, null, MarkupAdmonition.CAUTION) + .block("Literal", MarkupBlockStyle.LITERAL, null, MarkupAdmonition.NOTE) + .block("Sidebar", MarkupBlockStyle.SIDEBAR, null, MarkupAdmonition.TIP) + .block("Passthrough", MarkupBlockStyle.PASSTHROUGH, null, MarkupAdmonition.WARNING) .tableWithHeaderRow(tableRowsInPSV) //.table(tableCells) .tableWithColumnSpecs(tableColumns, tableCells)