summaryrefslogtreecommitdiffstats
path: root/third_party/WebKit/LayoutTests/fast/dom/getElementById-consistency.html
blob: 1fce622dc995435fffa7e4c28f57e97d298cac8b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<!DOCTYPE html>
<script src="../../resources/js-test.js"></script>
<div id=container>
</div>
<span id=el>
</span>
<script>
description('Test that DOMSubtreeModified listeners cannot cause inDocument to be incorrect');

var counter = 0;
var container = document.getElementById('container');
var el = document.getElementById('el');
function broken() {
   if (++counter > 2) {
      document.removeEventListener('DOMSubtreeModified', broken, true);
      return;
   }
   container.appendChild(el);
}

document.addEventListener("DOMSubtreeModified", broken, true);
broken();
shouldBeTrue("document.contains(document.getElementById('el'))");
el.parentNode.removeChild(el);
el = null;
gc();
shouldBeNull("document.getElementById('el')");
</script>