| Index: third_party/WebKit/LayoutTests/external/wpt/content-security-policy/script-src/script-src-strict_dynamic_eval.html
|
| diff --git a/third_party/WebKit/LayoutTests/external/wpt/content-security-policy/script-src/script-src-strict_dynamic_eval.html b/third_party/WebKit/LayoutTests/external/wpt/content-security-policy/script-src/script-src-strict_dynamic_eval.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..62fda4f3d23051be27e377c4bfb3699068ba0460
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/external/wpt/content-security-policy/script-src/script-src-strict_dynamic_eval.html
|
| @@ -0,0 +1,37 @@
|
| +<!DOCTYPE HTML>
|
| +<html>
|
| +
|
| +<head>
|
| + <title>Scripts injected via `eval` are not allowed with `strict-dynamic` without `unsafe-eval`.</title>
|
| + <script src='/resources/testharness.js' nonce='dummy'></script>
|
| + <script src='/resources/testharnessreport.js' nonce='dummy'></script>
|
| +
|
| + <!-- CSP served: script-src 'strict-dynamic' 'nonce-dummy' -->
|
| +</head>
|
| +
|
| +<body>
|
| + <h1>Scripts injected via `eval` are not allowed with `strict-dynamic` without `unsafe-eval`.</h1>
|
| + <div id='log'></div>
|
| +
|
| + <script nonce='dummy'>
|
| + var evalScriptRan = false;
|
| +
|
| + async_test(function(t) {
|
| + window.addEventListener('securitypolicyviolation', t.step_func_done(function(e) {
|
| + assert_false(evalScriptRan);
|
| + assert_equals(e.effectiveDirective, 'script-src');
|
| + }));
|
| +
|
| + assert_throws(new Error(),
|
| + function() {
|
| + try {
|
| + eval("evalScriptRan = true;");
|
| + } catch (e) {
|
| + throw new Error();
|
| + }
|
| + });
|
| + }, "Script injected via `eval` is not allowed with `strict-dynamic` without `unsafe-eval`.");
|
| + </script>
|
| +</body>
|
| +
|
| +</html>
|
|
|