summaryrefslogtreecommitdiffstats
path: root/LayoutTests/http/tests/appcache/top-frame-2.html
blob: c239d08f150dddb32497fa5dee2a1667299a3bba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<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.layoutTestController) {
    layoutTestController.dumpAsText();
    layoutTestController.waitUntilDone();
}

function log(message)
{
    document.getElementById("result").innerHTML += message + "<br>";
}

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() { log("checking") }

    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() { log("SUCCESS"); if (window.layoutTestController) layoutTestController.notifyDone() }, false);

</script>
</body>
</html>