blob: a4be98279c07a2311dde3cd9d1aa66af3fe71c0c [file] [log] [blame]
<html>
<head>
<script>
function print(message, color)
{
var paragraph = document.createElement("div");
paragraph.appendChild(document.createTextNode(message));
paragraph.style.fontFamily = "monospace";
if (color)
paragraph.style.color = color;
document.getElementById("console").appendChild(paragraph);
}
function shouldBe(a, b)
{
var internalFrame = document.getElementById ('internal');
var evalA = eval(a);
if (evalA == b)
print("PASS: " + a + " should be " + b + " and is.", "green");
else {
print("FAIL: " + a + " should be " + b + " but instead is " + evalA + ".", "red");
}
}
function checkTest1() {
var internalFrame = document.getElementById ('internal');
shouldBe('internalFrame.contentWindow.location.port == "88"', true);
internalFrame.contentWindow.location.port = "";
setTimeout(checkTest2, 300);
}
function checkTest2() {
var internalFrame = document.getElementById ('internal');
shouldBe('internalFrame.contentWindow.location.port == ""', true);
internalFrame.contentWindow.location.port = 80;
setTimeout(checkTest3, 300);
}
function checkTest3() {
var internalFrame = document.getElementById ('internal');
shouldBe('internalFrame.contentWindow.location.port == "80"', true);
internalFrame.contentWindow.location.port = 0;
setTimeout(checkTest4, 300);
}
function checkTest4() {
var internalFrame = document.getElementById ('internal');
shouldBe('internalFrame.contentWindow.location.host', ':0');
if (window.testRunner)
testRunner.notifyDone();
}
function runTests() {
if (window.testRunner) {
testRunner.clearBackForwardList();
testRunner.dumpAsText();
testRunner.waitUntilDone();
}
var internalFrame = document.getElementById ('internal');
shouldBe('internalFrame.contentWindow.location.port == ""', true);
internalFrame.contentWindow.location.port = 88;
setTimeout(checkTest1, 300);
};
</script>
</head>
<body onload="runTests();">
<p>This tests that modifying location.port works as it should</p>
<iframe id="internal" style="display: none;" src="resources/location-port-iframe.html" width="0" height="0">
</iframe>
<div id="console">
</div>
</body>
</html>