package org.zwobble.mammoth.tests.html;
import org.junit.jupiter.api.Test;
import org.zwobble.mammoth.internal.html.Html;
import org.zwobble.mammoth.internal.html.HtmlNode;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.zwobble.mammoth.internal.util.Lists.list;
import static org.zwobble.mammoth.internal.util.Maps.map;
public class HtmlWriteTests {
@Test
public void textNodesAreWrittenAsPlainText() {
assertEquals(
"Dark Blue",
write(Html.text("Dark Blue")));
}
@Test
public void textNodesAreHtmlEscaped() {
assertEquals(
"><&",
write(Html.text("><&")));
}
@Test
public void doubleQuotesInTextNodesArentHtmlEscaped() {
assertEquals(
"><&\"",
write(Html.text("><&\"")));
}
@Test
public void voidElementsWithoutChildrenAreWrittenAsSelfClosing() {
assertEquals(
"
",
write(Html.element("br"))
);
}
@Test
public void canWriteSelfClosingElementWithAttributes() {
assertEquals(
"",
write(Html.element("img", map("class", "external", "src", "http://example.com"))));
}
@Test
public void canWriteElementWithNoChildren() {
assertEquals(
"