105 lines
3.2 KiB
HTML
105 lines
3.2 KiB
HTML
<html>
|
|
<head>
|
|
<style>
|
|
.failed {
|
|
color: red;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.passed {
|
|
color: green;
|
|
font-weight: bold;
|
|
}
|
|
</style>
|
|
<script>
|
|
if (window.testRunner)
|
|
window.testRunner.dumpAsText();
|
|
var count = 0;
|
|
|
|
function shouldThrowException(node)
|
|
{
|
|
document.body.appendChild(document.createElement("br"));
|
|
var header = document.createElement("div");
|
|
header.textContent = ++count + ". Verifying XMLSerializer.serializeToString() should THROW exception with node value = " + node;
|
|
document.body.appendChild(header);
|
|
|
|
var xs = new XMLSerializer();
|
|
try {
|
|
var str = xs.serializeToString(node);
|
|
|
|
var result = document.createElement("div");
|
|
result.className = "failed"
|
|
result.textContent = "FAIL";
|
|
document.body.appendChild(result);
|
|
} catch (exception) {
|
|
var err = "Exception thrown = [" + exception.name + ": " + exception.message + "]";
|
|
var content = document.createElement("div");
|
|
content.textContent = err;
|
|
document.body.appendChild(content);
|
|
|
|
var result = document.createElement("div");
|
|
result.className = "passed"
|
|
result.textContent = "PASS";
|
|
document.body.appendChild(result);
|
|
}
|
|
}
|
|
|
|
function shouldNOTThrowException(node)
|
|
{
|
|
document.body.appendChild(document.createElement("br"));
|
|
var header = document.createElement("div");
|
|
header.textContent = ++count + ". Verifying XMLSerializer.serializeToString() should NOT-THROW exception with node value = " + node;
|
|
document.body.appendChild(header);
|
|
|
|
var xs = new XMLSerializer();
|
|
try {
|
|
var str = xs.serializeToString(node);
|
|
|
|
var result = document.createElement("div");
|
|
result.className = "passed"
|
|
result.textContent = "PASS";
|
|
document.body.appendChild(result);
|
|
} catch (exception) {
|
|
var err = "Exception thrown = [" + exception.name + ": " + exception.message + "]";
|
|
var content = document.createElement("div");
|
|
content.textContent = err;
|
|
document.body.appendChild(content);
|
|
|
|
var result = document.createElement("div");
|
|
result.className = "failed"
|
|
result.textContent = "FAIL";
|
|
document.body.appendChild(result);
|
|
}
|
|
}
|
|
|
|
function runTest()
|
|
{
|
|
shouldThrowException(null);
|
|
shouldThrowException(undefined);
|
|
shouldThrowException("<html><title>Hello World</title></html>");
|
|
shouldThrowException(document.children);
|
|
|
|
shouldNOTThrowException(document);
|
|
shouldNOTThrowException(document.documentElement);
|
|
shouldNOTThrowException(document.firstChild);
|
|
shouldNOTThrowException(document.createElement("div"));
|
|
shouldNOTThrowException(document.getElementById("heading"));
|
|
shouldNOTThrowException(document.createElement("custom"));
|
|
|
|
var domParser = new DOMParser();
|
|
|
|
var htmlDoc = domParser.parseFromString("<html/>", "text/html");
|
|
shouldNOTThrowException(htmlDoc);
|
|
shouldNOTThrowException(htmlDoc.firstChild);
|
|
|
|
var xmlDoc = domParser.parseFromString("<root/>", "text/xml");
|
|
shouldNOTThrowException(xmlDoc);
|
|
shouldNOTThrowException(xmlDoc.lastChild);
|
|
}
|
|
</script>
|
|
</head>
|
|
<body onload="runTest();">
|
|
This tests XMLSerializer.serializeToString() throwing exception when node value is invalid and passing otherwise.
|
|
<h1 id="heading"/>
|
|
</body>
|
|
</html> |