67 lines
1.6 KiB
HTML
67 lines
1.6 KiB
HTML
<html>
|
|
<head>
|
|
<script>
|
|
if (window.testRunner)
|
|
testRunner.dumpAsText();
|
|
|
|
function debug(msg)
|
|
{
|
|
var span = document.createElement("span");
|
|
document.getElementById("console").appendChild(span);
|
|
span.innerHTML = msg + '<br />';
|
|
}
|
|
|
|
function escapeHTML(text)
|
|
{
|
|
return text.replace(/&/g, "&").replace(/</g, "<").replace(/\0/g, "\\0");
|
|
}
|
|
|
|
function testPassed(msg)
|
|
{
|
|
debug('<span><span class="pass">PASS</span> ' + escapeHTML(msg) + '</span>');
|
|
}
|
|
|
|
function testFailed(msg)
|
|
{
|
|
debug('<span><span class="fail">FAIL</span> ' + escapeHTML(msg) + '</span>');
|
|
}
|
|
|
|
function shouldThrow(_a, _e)
|
|
{
|
|
var exception;
|
|
var _av;
|
|
try {
|
|
_av = eval(_a);
|
|
} catch (e) {
|
|
exception = e;
|
|
}
|
|
|
|
var _ev;
|
|
if (_e)
|
|
_ev = eval(_e);
|
|
|
|
if (exception) {
|
|
if (typeof _e == "undefined" || exception == _ev)
|
|
testPassed(_a + " threw exception " + exception + ".");
|
|
else
|
|
testFailed(_a + " should throw " + (typeof _e == "undefined" ? "an exception" : _ev) + ". Threw exception " + exception + ".");
|
|
} else if (typeof _av == "undefined")
|
|
testFailed(_a + " should throw " + (typeof _e == "undefined" ? "an exception" : _ev) + ". Was undefined.");
|
|
else
|
|
testFailed(_a + " should throw " + (typeof _e == "undefined" ? "an exception" : _ev) + ". Was " + _av + ".");
|
|
}
|
|
</script>
|
|
<script>
|
|
|
|
window.onload = function() {
|
|
shouldThrow("window.localStorage", "'SecurityError: The operation is insecure.'");
|
|
shouldThrow("window.sessionStorage", "'SecurityError: The operation is insecure.'");
|
|
}
|
|
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div id="console"></div>
|
|
</body>
|
|
</html>
|