<!DOCTYPE html>
<meta name="variant" content="?target_hint=_self">
<meta name="variant" content="?target_hint=_blank">
<meta name="timeout" content="long">
<script src="/common/utils.js"></script>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="../resources/utils.js"></script>
<script src="resources/utils.js"></script>

<body>
<script>
setup(() => assertSpeculationRulesIsSupported());

promise_test(async t => {
  // The key used for storing a test result in the server.
  const key = token();

  // Open the test runner in a popup - it will prerender itself, record the
  // test results, and send them back to this harness.
  const url =
    `resources/csp-script-src-strict-dynamic.html?key=${key}&target_hint=${getTargetHint()}`;
  window.open(url, '_blank', 'noopener');

  // Wait until the test sends us the results.
  const result = await nextValueFromServer(key);

  assert_equals(result, "true", "");
}, 'Test if CSP script-src strict-dynamic allows inline speculationrules injected from the permitted scripts.');
</script>
