Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / fast / block / positioning / positioned-object-under-split-block-parent-crash.html
1 <!DOCTYPE html>
2 <html>
3 <style>
4 .colContainer { -webkit-column-count: 0; }
5 .absolutePosition { position: absolute; }
6 .colSpanAll { -webkit-column-span: all; }
7 .transformed { transform: rotate(45deg); }
8 .hidden { display:none; }
9 .normal { display:block;}
10 </style>
11 <script>
12
13 window.onload = function() {
14     columnContainerBlock = document.createElement('div');
15     columnContainerBlock.setAttribute('class', 'colContainer');
16     document.documentElement.appendChild(columnContainerBlock);
17
18     splitBlockParent = document.createElement('div');
19     splitBlockParent.setAttribute('class', 'transformed');
20     columnContainerBlock.appendChild(splitBlockParent);
21
22     splitFlowDt = document.createElement('dt');
23     splitBlockParent.appendChild(splitFlowDt);
24
25     positionedDiv = document.createElement('div');
26     positionedDiv.setAttribute('class', 'absolutePosition');
27     splitBlockParent.appendChild(positionedDiv);
28
29     columnSpan = document.createElement('col');
30     columnSpan.setAttribute('class', 'colSpanAll');
31     splitFlowDt.appendChild(columnSpan); // Inserting the col inside the dt causes it to get split.
32     document.documentElement.offsetHeight;
33
34     splitFlowDt.setAttribute('class', 'hidden'); // This removes the split dt and the col from the render tree.
35     document.documentElement.offsetHeight;
36
37     splitFlowDt.setAttribute('class', 'normal'); // Re-adding the dt causes the flow to split again.
38     document.documentElement.offsetHeight;
39
40     splitBlockParent.removeChild(positionedDiv); // Remove the positioned object from the tree.
41     document.documentElement.offsetHeight;
42
43     splitBlockParent.removeChild(splitFlowDt); // Ensure the node with the bad positioned object list gets layout.
44
45     if (window.testRunner)
46         testRunner.dumpAsText();
47 }
48 </script>
49 <body>
50 PASS if no assert or crash in debug
51 </body>
52 </html>