Index: LayoutTests/fast/dom/Range/range-dom-node-removed-assert.html |
diff --git a/LayoutTests/fast/dom/Range/range-dom-node-removed-assert.html b/LayoutTests/fast/dom/Range/range-dom-node-removed-assert.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..6e2b2f14d51ba4f7ab15992f5ae18612fc3f7794 |
--- /dev/null |
+++ b/LayoutTests/fast/dom/Range/range-dom-node-removed-assert.html |
@@ -0,0 +1,26 @@ |
+<!DOCTYPE html> |
+<script src="../../../resources/testharness.js"></script> |
+<script src="../../../resources/testharnessreport.js"></script> |
+<div id="sample"></div> |
+<div id="log"></div> |
+<script> |
+var moved = false; |
+var sample = document.getElementById('sample'); |
+var range = document.createRange(); |
+range.setStart(sample, 0); |
+range.setEnd(sample, 0); |
+sample.addEventListener('DOMNodeRemoved', function() { |
+ if (moved) |
+ return; |
+ moved = true; |
+ document.implementation.createDocument('', null).appendChild(sample); |
+}); |
+test(function() { |
+ var doc = document.implementation.createDocument('http://www.w3.org/1999/xhtml', 'html'); |
+ try { |
+ doc.documentElement.appendChild(sample); |
+ } catch (exception) { |
+ assert_equals(exception.toString(), 'NotFoundError: Failed to execute \'appendChild\' on \'Node\': The node to be removed is no longer a child of this node. Perhaps it was moved in response to a mutation?'); |
+ } |
+}); |
+</script> |