<html>
<head>
<script>
var frames = 2;
if (window.testRunner) {
	testRunner.dumpAsText();
	testRunner.dumpChildFramesAsText();
	testRunner.waitUntilDone();
}
window.onmessage = function(message) {
	--frames;
	if (frames <= 0 && window.testRunner)
		testRunner.notifyDone();
}
</script>
</head>
<body>
<p>This iframe should have a cache:</p>
<iframe src="http://localhost:8000/security/resources/cross-origin-iframe-for-appcache-allowed.html"></iframe>
<p>This iframe should have a cache:</p>
<iframe src="http://127.0.0.1:8000/security/resources/cross-origin-iframe-for-appcache-allowed.html"></iframe>
</body>
</html>
