| Index: third_party/WebKit/LayoutTests/imported/web-platform-tests/dom/nodes/Node-removeChild.html
|
| diff --git a/third_party/WebKit/LayoutTests/imported/web-platform-tests/dom/nodes/Node-removeChild.html b/third_party/WebKit/LayoutTests/imported/web-platform-tests/dom/nodes/Node-removeChild.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..894f5ec546f0b037bcfdd548f89f5e6a57ea3deb
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/imported/web-platform-tests/dom/nodes/Node-removeChild.html
|
| @@ -0,0 +1,54 @@
|
| +<!DOCTYPE html>
|
| +<title>Node.removeChild</title>
|
| +<script src="../../../../resources/testharness.js"></script>
|
| +<script src="../../../../resources/testharnessreport.js"></script>
|
| +<script src="creators.js"></script>
|
| +<div id="log"></div>
|
| +<iframe src=about:blank></iframe>
|
| +<script>
|
| +var documents = [
|
| + [function() { return document }, "the main document"],
|
| + [function() { return frames[0].document }, "a frame document"],
|
| + [function() { return document.implementation.createHTMLDocument() },
|
| + "a synthetic document"],
|
| +];
|
| +
|
| +documents.forEach(function(d) {
|
| + var get = d[0], description = d[1]
|
| + for (var p in creators) {
|
| + var creator = creators[p];
|
| + test(function() {
|
| + var doc = get();
|
| + var s = doc[creator]("a")
|
| + assert_equals(s.ownerDocument, doc)
|
| + assert_throws("NOT_FOUND_ERR", function() { document.body.removeChild(s) })
|
| + assert_equals(s.ownerDocument, doc)
|
| + }, "Passing a detached " + p + " from " + description +
|
| + " to removeChild should not affect it.")
|
| +
|
| + test(function() {
|
| + var doc = get();
|
| + var s = doc[creator]("b")
|
| + doc.documentElement.appendChild(s)
|
| + assert_equals(s.ownerDocument, doc)
|
| + assert_throws("NOT_FOUND_ERR", function() { document.body.removeChild(s) })
|
| + assert_equals(s.ownerDocument, doc)
|
| + }, "Passing a non-detached " + p + " from " + description +
|
| + " to removeChild should not affect it.")
|
| +
|
| + test(function() {
|
| + var doc = get();
|
| + var s = doc[creator]("test")
|
| + doc.body.appendChild(s)
|
| + assert_equals(s.ownerDocument, doc)
|
| + assert_throws("NOT_FOUND_ERR", function() { s.removeChild(doc) })
|
| + }, "Calling removeChild on a " + p + " from " + description +
|
| + " with no children should throw NOT_FOUND_ERR.")
|
| + }
|
| +});
|
| +
|
| +test(function() {
|
| + assert_throws(new TypeError(), function() { document.body.removeChild(null) })
|
| + assert_throws(new TypeError(), function() { document.body.removeChild({'a':'b'}) })
|
| +}, "Passing a value that is not a Node reference to removeChild should throw TypeError.")
|
| +</script>
|
|
|