mirror of
https://github.com/servo/servo.git
synced 2025-07-13 10:23:40 +01:00
24 lines
958 B
HTML
24 lines
958 B
HTML
<!DOCTYPE html>
|
|
<head>
|
|
<meta http-equiv="content-security-policy" content="script-src 'self' 'nonce-abc'">
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
</head>
|
|
<body>
|
|
<iframe src="support/frame-with-csp.sub.html"></iframe>
|
|
<div onclick="frames[0].location.href = 'javascript:parent.postMessage(\'executed\', \'*\')'" id="special_div"></div>
|
|
<script nonce='abc'>
|
|
var t = async_test("Should not have executed the javascript url");
|
|
frames[0].addEventListener('load', () => {
|
|
window.onmessage = t.step_func(function(e) {
|
|
if (e.data == "executed")
|
|
assert_true(false, "Javascript url executed");
|
|
});
|
|
window.addEventListener('securitypolicyviolation', t.step_func_done(function(e) {
|
|
assert_equals(e.blockedURI, 'inline');
|
|
assert_equals(e.violatedDirective, 'script-src-attr');
|
|
}));
|
|
document.getElementById('special_div').click();
|
|
});
|
|
</script>
|
|
</body>
|