| <html manifest="fail-on-update.php"> | |
| <body> | |
| <div id=result></div> | |
| <script> | |
| function log(message) | |
| { | |
| document.getElementById("result").innerHTML += message + "<br>"; | |
| } | |
| function onObsolete() | |
| { | |
| log("obsolete") | |
| log("status=" + applicationCache.status + " (expected 5)"); | |
| applicationCache.onobsolete = function() { log("obsolete") } | |
| applicationCache.onupdateready = function() { log("updateready") } | |
| applicationCache.onnoupdate = function() { log("noupdate") } | |
| applicationCache.onnoupdate = function() { log("error") } | |
| // We still have a cache, so loading should fail | |
| try { | |
| var req = new XMLHttpRequest; | |
| req.open("GET", "empty.txt", false); | |
| req.send(null); | |
| alert("FAIL: XMLHttpRequest for an uncached resource didn't raise an exception"); | |
| } catch (ex) { | |
| } | |
| log("There should be no messages below."); | |
| } | |
| function onError() | |
| { | |
| if (applicationCache.status != applicationCache.UNCACHED && applicationCache.status != applicationCache.OBSOLETE) { | |
| timeoutId = setTimeout(onNoManifest, 100); | |
| return; | |
| } | |
| log("error"); | |
| applicationCache.onobsolete = function() { log("obsolete") } | |
| applicationCache.onupdateready = function() { log("updateready") } | |
| applicationCache.onnoupdate = function() { log("noupdate") } | |
| applicationCache.onnoupdate = function() { log("error") } | |
| // Ensure that we are not associated with a cache. | |
| try { | |
| var req = new XMLHttpRequest; | |
| req.open("GET", "empty.txt", false); | |
| req.send(null); | |
| } catch (ex) { | |
| alert("FAIL: XMLHttpRequest raised an exception, " + ex); | |
| } | |
| log("There should be no messages below."); | |
| parent.postMessage("frameDone - timeout", "*"); | |
| } | |
| applicationCache.onupdateready = function() { log("updateready"); alert("Unexpected updateready event in frame") } | |
| applicationCache.onnoupdate = function() { log("noupdate") } | |
| applicationCache.oncached = function() { log("cached"); alert("Unexpected cached event in frame") } | |
| applicationCache.onobsolete = onObsolete; | |
| applicationCache.onerror = onError; | |
| </script> | |
| </body> | |
| </html> |