diff --git a/src/nl/astraeus/tag/TagCreator.kt b/src/nl/astraeus/tag/TagCreator.kt index ddd2245..03b563a 100644 --- a/src/nl/astraeus/tag/TagCreator.kt +++ b/src/nl/astraeus/tag/TagCreator.kt @@ -256,9 +256,9 @@ } if (pretty) { - return indent(indent) + "<$tag$tagAttributes>" + return indent(indent) + "<$tag$tagAttributes/>" } else { - return "<$tag$tagAttributes>" + return "<$tag$tagAttributes/>" } } @@ -469,14 +469,14 @@ if (pretty) { rendered.append(indent(indent)) } rendered.append(renderOpenTag()) - if (pretty) { rendered.append("\n") } + if (pretty && !children.isEmpty()) { rendered.append("\n") } for (child in children) { rendered.append(child.render(indent + 2, pretty)) if (pretty) { rendered.append("\n") } } - if (pretty) { rendered.append(indent(indent)) } + if (pretty && !children.isEmpty()) { rendered.append(indent(indent)) } rendered.append(renderCloseTag()) return rendered.toString() diff --git a/src/nl/astraeus/tag/TagCreator.kt b/src/nl/astraeus/tag/TagCreator.kt index ddd2245..03b563a 100644 --- a/src/nl/astraeus/tag/TagCreator.kt +++ b/src/nl/astraeus/tag/TagCreator.kt @@ -256,9 +256,9 @@ } if (pretty) { - return indent(indent) + "<$tag$tagAttributes>" + return indent(indent) + "<$tag$tagAttributes/>" } else { - return "<$tag$tagAttributes>" + return "<$tag$tagAttributes/>" } } @@ -469,14 +469,14 @@ if (pretty) { rendered.append(indent(indent)) } rendered.append(renderOpenTag()) - if (pretty) { rendered.append("\n") } + if (pretty && !children.isEmpty()) { rendered.append("\n") } for (child in children) { rendered.append(child.render(indent + 2, pretty)) if (pretty) { rendered.append("\n") } } - if (pretty) { rendered.append(indent(indent)) } + if (pretty && !children.isEmpty()) { rendered.append(indent(indent)) } rendered.append(renderCloseTag()) return rendered.toString() diff --git a/test/nl/astraeus/tag/BasicTest.kt b/test/nl/astraeus/tag/BasicTest.kt index 5461992..46a55e7 100644 --- a/test/nl/astraeus/tag/BasicTest.kt +++ b/test/nl/astraeus/tag/BasicTest.kt @@ -7,6 +7,33 @@ * Created by rnentjes on 20-10-15. */ +fun form(id: String, inline: Boolean = false): ContainerTag { + var result = form() + + if (inline) { + result.withClass("form-online") + } + + result.withMethod("post") + + return result +} + +fun textInput(id: String, label: String = "", ph: String = ""): ContainerTag { + var result = div().withClass("form-group") + + result.with(label(label).attr("for", id)) + result.with(input() + .withClass("form-control") + .withType("text") + .withId(id) + .withName(id) + .withPlaceholder(ph) + ) + + return result +} + class BasicTest { @Test fun basicTest() { @@ -15,12 +42,46 @@ ).with(hr()) assertTrue { - html.render().equals("