Sweden-Number/dlls/mshtml/tests/nav_test.html

93 lines
2.4 KiB
HTML

<html>
<head>
<script>
function ok(b,m) {
return external.ok(b, m);
}
function nav_parent_test() {
external.trace("Running _parent navigation tests...");
var iframe = document.getElementById("testframe");
var subframe = iframe.contentWindow.document.createElement("iframe");
subframe.onload = function() {
var doc = subframe.contentWindow.document;
doc.body.innerHTML = '<a href="blank2.html" id="aid" target="_parent">test</a>';
doc.getElementById("aid").click();
}
iframe.onload = function() {
iframe.onload = null;
var href = iframe.contentWindow.location.href;
ok(/.*blank2.html/.test(href), "Unexpected href " + href);
next_test();
}
iframe.contentWindow.document.body.appendChild(subframe);
subframe.src = "blank.html";
}
function window_navigate_test() {
external.trace("Running window.navigate() tests...");
var iframe = document.getElementById("testframe");
iframe.onload = function() {
iframe.onload = null;
var href = iframe.contentWindow.location.href;
ok(href === "about:blank", "Unexpected href " + href);
next_test();
}
iframe.contentWindow.navigate("about:blank");
}
function window_open_self_test() {
external.trace("Running window.open(_self) tests...");
var iframe = document.getElementById("testframe");
var iframe_window = iframe.contentWindow;
iframe.onload = function() {
iframe.onload = null;
var href = iframe.contentWindow.location.href;
ok(/.*blank.html\?window_open_self/.test(href), "Unexpected href " + href);
ok(iframe.contentWindow === iframe_window, "iframe.contentWindow !== iframe_window");
next_test();
}
iframe_window.open("blank.html?window_open_self", "_self");
}
function detached_src_test() {
var iframe = document.createElement("iframe");
var onload_called = false;
iframe.onload = function() {
onload_called = true;
next_test();
}
iframe.src = "blank.html";
document.body.appendChild(iframe);
ok(onload_called === false, "called onload too early?");
}
var tests = [
nav_parent_test,
window_navigate_test,
window_open_self_test,
detached_src_test,
function() { external.reportSuccess(); }
];
function next_test() {
window.setTimeout(tests.shift(), 0);
}
</script>
<body onload="next_test()">
<iframe src="about:blank" id="testframe"></iframe>
</body>
</html>