| <html manifest="resources/subframes-2.manifest"> | |
| <body> | |
| <p>Test that a subframe without manifest gets picked by a relevant application cache that | |
| contains its resource.</p> | |
| <p>Should say SUCCESS:</p> | |
| <div id=result></div> | |
| <script> | |
| if (window.testRunner) { | |
| testRunner.dumpAsText(); | |
| testRunner.waitUntilDone(); | |
| } | |
| function log(message) | |
| { | |
| document.getElementById("result").innerHTML += message + "<br>"; | |
| } | |
| function debug(message) | |
| { | |
| // If running manually in the browser, print the sequence of events. | |
| if (!window.testRunner) | |
| log(message); | |
| } | |
| var receivedExpectedMessage = false; | |
| var receivedCheckingEvent = false; | |
| var receivedNoupdateEvent = false; | |
| function checkDone() | |
| { | |
| if (receivedExpectedMessage && receivedCheckingEvent && receivedNoupdateEvent) { | |
| log("SUCCESS"); | |
| if (window.testRunner) | |
| testRunner.notifyDone(); | |
| } | |
| } | |
| function test() | |
| { | |
| applicationCache.onnoupdate = null; | |
| applicationCache.oncached = null; | |
| // When a new main resource is associated with the cache, an update should be started. | |
| applicationCache.onchecking = function() { debug("checking"); receivedCheckingEvent = true; checkDone(); } | |
| applicationCache.onnoupdate = function() { debug("noupdate"); receivedNoupdateEvent = true; checkDone(); } | |
| var ifr = document.createElement("iframe"); | |
| ifr.setAttribute("src", "resources/subframe-2.html"); | |
| document.body.appendChild(ifr); | |
| } | |
| applicationCache.onnoupdate = function() { test() } | |
| applicationCache.oncached = function() { test() } | |
| applicationCache.onupdateready = function() { log("FAIL: received unexpected updateready event") } | |
| applicationCache.onerror = function() { log("FAIL: received unexpected error event") } | |
| window.addEventListener("message", function() { debug("message"); receivedExpectedMessage = true; checkDone(); }, false); | |
| </script> | |
| </body> | |
| </html> |