tizen beta release
[profile/ivi/webkit-efl.git] / LayoutTests / fast / dom / shadow / gc-shadow.html
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <script src="../../js/resources/js-test-pre.js"></script>
5 </head>
6 <body>
7 <pre id="console">
8 This tests that the JavaScript wrapper objects of shadow DOM objects
9 are not prematurely garbage collected.
10
11 </pre>
12 <script>
13 function gc() {
14     if (window.GCController) {
15         GCController.collect();
16         return;
17     }
18
19     for (var i = 0; i < 10000; i++)
20         new String(i);
21 }
22
23 if (window.internals) {
24     var ps = [];
25
26     for (var i = 0; i < 10; i++) {
27         var p = document.createElement('p');
28         ps.push(p);
29
30         var shadow = internals.ensureShadowRoot(p);
31         shadow.tattoo = 'I <3 WebKit';
32         shadow = null;
33     }
34
35     gc();
36
37     for (i = 0; i < ps.length; i++) {
38         shouldBe('internals.shadowRoot(ps[' + i + ']).tattoo', '"I <3 WebKit"');
39     }
40 }
41 </script>
42 <script src="../../js/resources/js-test-post.js"></script>
43 </body>
44 </html>