| Index: third_party/WebKit/LayoutTests/external/wpt/content-security-policy/securitypolicyviolation/style-sample-no-opt-in.html
|
| diff --git a/third_party/WebKit/LayoutTests/external/wpt/content-security-policy/securitypolicyviolation/style-sample-no-opt-in.html b/third_party/WebKit/LayoutTests/external/wpt/content-security-policy/securitypolicyviolation/style-sample-no-opt-in.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..05caaaa41464c96e2360711f00b747cfb36269ce
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/external/wpt/content-security-policy/securitypolicyviolation/style-sample-no-opt-in.html
|
| @@ -0,0 +1,39 @@
|
| +<!doctype html>
|
| +<meta http-equiv="Content-Security-Policy" content="style-src 'nonce-abc'">
|
| +<script nonce="abc" src="/resources/testharness.js"></script>
|
| +<script nonce="abc" src="/resources/testharnessreport.js"></script>
|
| +<body>
|
| +<script nonce="abc">
|
| + function waitForViolation(el) {
|
| + return new Promise(resolve => {
|
| + el.addEventListener('securitypolicyviolation', e => resolve(e));
|
| + });
|
| + }
|
| +
|
| + async_test(t => {
|
| + var s = document.createElement('style');
|
| + s.innerText = "p { omg: yay !important; }";
|
| +
|
| + waitForViolation(s)
|
| + .then(t.step_func_done(e => {
|
| + assert_equals(e.blockedURI, "inline");
|
| + assert_equals(e.sample, "");
|
| + }));
|
| +
|
| + document.head.append(s);
|
| + }, "Inline style blocks should not have a sample.");
|
| +
|
| + async_test(t => {
|
| + var p = document.createElement('p');
|
| + p.setAttribute("style", "omg: yay !important;");
|
| + p.innerText = "Yay!";
|
| +
|
| + waitForViolation(p)
|
| + .then(t.step_func_done(e => {
|
| + assert_equals(e.blockedURI, "inline");
|
| + assert_equals(e.sample, "");
|
| + }));
|
| +
|
| + document.head.append(p);
|
| + }, "Inline style attributes should not have a sample.");
|
| +</script>
|
|
|