aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2014-04-10 14:33:36 +0100
committerMichael Williamson <mike@zwobble.org>2014-04-10 14:33:36 +0100
commit0201587bec80aac0c1dcbf12c50ea6d459321585 (patch)
tree58a158b542e4ec76ceec81c4bde8a8c64b34ed48
parent91eb47cc9c8b82bc171f818046c8100e3420a2b2 (diff)
Indent appened HTML
-rw-r--r--lib/html-writer.js7
-rw-r--r--tests/html-writer.tests.js8
2 files changed, 14 insertions, 1 deletions
diff --git a/lib/html-writer.js b/lib/html-writer.js
index be35d52..c144261 100644
--- a/lib/html-writer.js
+++ b/lib/html-writer.js
@@ -57,6 +57,11 @@ function prettyWriter() {
writer.selfClosing(tagName, attributes);
}
+ function append(html) {
+ indent();
+ writer.append(html.replace("\n", "\n" + indentation));
+ }
+
function insideIndentedElement() {
return stack.length === 0 || indentedElements[stack[stack.length - 1]];
}
@@ -76,7 +81,7 @@ function prettyWriter() {
close: close,
text: text,
selfClosing: selfClosing,
- append: writer.append
+ append: append
};
}
diff --git a/tests/html-writer.tests.js b/tests/html-writer.tests.js
index de8b76f..c40cda4 100644
--- a/tests/html-writer.tests.js
+++ b/tests/html-writer.tests.js
@@ -66,4 +66,12 @@ describe('html-writer', function() {
writer.close("p");
return assert.equal(writer.asString(), "<p>\n <br />\n</p>");
});
+
+ test('newlines in appended HTML are indented', function() {
+ var writer = htmlWriter.writer({prettyPrint: true});
+ writer.open("p");
+ writer.append("One\nTwo");
+ writer.close("p");
+ return assert.equal(writer.asString(), "<p>\n One\n Two\n</p>");
+ });
})