<!DOCTYPE html>
<!-- DO NOT EDIT! Generated by `common/security-features/tools/generate.py --spec referrer-policy/4K+1/` -->
<html>
  <head>
    <meta charset="utf-8">
    <meta name="timeout" content="long">
    <meta name="referrer" content="same-origin">
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
    <script src="/common/security-features/resources/common.sub.js"></script>
    <script src="../../../../generic/test-case.sub.js"></script>
    <script src="../../../generic/test-case.sub.js"></script>
  </head>
  <body>
    <script>
      TestCase(
        [
          {
            "expectation": "stripped-referrer",
            "origin": "same-http",
            "redirection": "keep-origin",
            "source_context_list": [],
            "source_scheme": "http",
            "subresource": "xhr",
            "subresource_policy_deliveries": [],
            "test_description": "Referrer Policy: Expects stripped-referrer for xhr to same-http origin and keep-origin redirection from http context."
          },
          {
            "expectation": "stripped-referrer",
            "origin": "same-http",
            "redirection": "no-redirect",
            "source_context_list": [],
            "source_scheme": "http",
            "subresource": "xhr",
            "subresource_policy_deliveries": [],
            "test_description": "Referrer Policy: Expects stripped-referrer for xhr to same-http origin and no-redirect redirection from http context."
          }
        ],
        new SanityChecker()
      ).start();
    </script>
    <div id="log"></div>
  </body>
</html>
