Index: third_party/WebKit/LayoutTests/imported/web-platform-tests/dom/nodes/ChildNode-remove.js |
diff --git a/third_party/WebKit/LayoutTests/imported/web-platform-tests/dom/nodes/ChildNode-remove.js b/third_party/WebKit/LayoutTests/imported/web-platform-tests/dom/nodes/ChildNode-remove.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..c36ba0d117479dc6fc5437733e80050b111895c1 |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/imported/web-platform-tests/dom/nodes/ChildNode-remove.js |
@@ -0,0 +1,30 @@ |
+function testRemove(node, parent, type) { |
+ test(function() { |
+ assert_true("remove" in node); |
+ assert_equals(typeof node.remove, "function"); |
+ assert_equals(node.remove.length, 0); |
+ }, type + " should support remove()"); |
+ test(function() { |
+ assert_equals(node.parentNode, null, "Node should not have a parent"); |
+ assert_equals(node.remove(), undefined); |
+ assert_equals(node.parentNode, null, "Removed new node should not have a parent"); |
+ }, "remove() should work if " + type + " doesn't have a parent"); |
+ test(function() { |
+ assert_equals(node.parentNode, null, "Node should not have a parent"); |
+ parent.appendChild(node); |
+ assert_equals(node.parentNode, parent, "Appended node should have a parent"); |
+ assert_equals(node.remove(), undefined); |
+ assert_equals(node.parentNode, null, "Removed node should not have a parent"); |
+ assert_array_equals(parent.childNodes, [], "Parent should not have children"); |
+ }, "remove() should work if " + type + " does have a parent"); |
+ test(function() { |
+ assert_equals(node.parentNode, null, "Node should not have a parent"); |
+ var before = parent.appendChild(document.createComment("before")); |
+ parent.appendChild(node); |
+ var after = parent.appendChild(document.createComment("after")); |
+ assert_equals(node.parentNode, parent, "Appended node should have a parent"); |
+ assert_equals(node.remove(), undefined); |
+ assert_equals(node.parentNode, null, "Removed node should not have a parent"); |
+ assert_array_equals(parent.childNodes, [before, after], "Parent should have two children left"); |
+ }, "remove() should work if " + type + " does have a parent and siblings"); |
+} |