41 lines
1.1 KiB
HTML
41 lines
1.1 KiB
HTML
This tests whether we correct parse various space characters in the sandbox attribute.<br>
|
|
<script>
|
|
var testCases = [
|
|
[' ', 'PASS: Space is a delimiter character.'],
|
|
['\t', 'PASS: Tab is a delimiter.'],
|
|
['x', 'FAIL: x is not a delimiter.'],
|
|
['\r', 'PASS: Return is a delimiter.'],
|
|
['\n', 'PASS: Newline is a delimiter.'],
|
|
['\v', 'FAIL: Vertical tab is not a delimiter.'],
|
|
['\f', 'PASS: Form feed is a delimiter.'],
|
|
]
|
|
|
|
function next() {
|
|
if (testCases.length) {
|
|
var testCase = testCases.pop();
|
|
testCharacter.apply(null, testCase);
|
|
return;
|
|
}
|
|
|
|
if (window.testRunner)
|
|
testRunner.notifyDone();
|
|
}
|
|
|
|
function testCharacter(possibleDelimiter, message) {
|
|
var policy = "allow-modals allow-scripts" + possibleDelimiter + "allow-forms";
|
|
var iframe = document.createElement('iframe');
|
|
iframe.sandbox = policy;
|
|
iframe.src = "data:text/html,<script>console.log('" + message + "');<\/script>";
|
|
iframe.onload = next;
|
|
document.body.appendChild(iframe);
|
|
}
|
|
|
|
if (window.testRunner) {
|
|
testRunner.dumpAsText();
|
|
testRunner.waitUntilDone();
|
|
}
|
|
|
|
next();
|
|
|
|
</script>
|