aboutsummaryrefslogtreecommitdiff
path: root/tests/html/write.tests.js
diff options
context:
space:
mode:
Diffstat (limited to 'tests/html/write.tests.js')
-rw-r--r--tests/html/write.tests.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/html/write.tests.js b/tests/html/write.tests.js
new file mode 100644
index 0000000..34eaf15
--- /dev/null
+++ b/tests/html/write.tests.js
@@ -0,0 +1,32 @@
+var assert = require("assert");
+
+var test = require("../testing").test;
+var html = require("../../lib/html");
+var writers = require("../../lib/writers");
+
+
+describe("HTML write", function() {
+ test("text is HTML escaped", function() {
+ assert.equal(
+ generateString(html.text("<>&")),
+ "&lt;&gt;&amp;");
+ });
+
+ test("element attributes are HTML escaped", function() {
+ assert.equal(
+ generateString(html.freshElement("p", {"x": "<"})),
+ '<p x="&lt;"></p>');
+ });
+
+ test("element children are written", function() {
+ assert.equal(
+ generateString(html.freshElement("p", {}, [html.text("Hello")])),
+ '<p>Hello</p>');
+ });
+});
+
+function generateString(node) {
+ var writer = writers.writer();
+ html.write(writer, node);
+ return writer.asString();
+}