2011-04-29 Geoffrey Garen <ggaren@apple.com>
[WebKit-https.git] / LayoutTests / fast / dom / gc-image-element.html
1 <p>Tests for image elements firing their load events even when they're not in the document.</p>
2 <pre id="console"></pre>
3
4 <script src="../js/resources/js-test-pre.js"></script>
5 <script>
6 function $(id)
7 {
8     return document.getElementById(id);
9 }
10
11 function log(s)
12 {
13     $("console").appendChild(document.createTextNode(s + "\n"));
14 }
15
16 var imageCount = 0;
17
18 function createImage()
19 {
20     ++imageCount;
21     var image = new Image;
22     image.src = "resources/apple.gif";
23     image.onload = function () {
24         log("PASS: loaded");
25         --imageCount;
26         if (imageCount)
27             return;
28         if (window.layoutTestController)
29             layoutTestController.notifyDone();
30     };
31 }
32
33 (function () {
34     if (window.layoutTestController) {
35         layoutTestController.dumpAsText();
36         layoutTestController.waitUntilDone();
37     }
38
39     var image = new Image;
40     image.src = "resources/apple.gif";
41     image.onload = function () { // Wait for the image to load so subsequent loads will be synchronous.
42         for (var i = 0; i < 10; ++i)
43             createImage();
44         gc();
45     }
46 })();
47 </script>