<!DOCTYPE html>
<title>Referrer of SignedHTTPExchange(physical:remote origin, logical:remote origin)</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/get-host-info.sub.js"></script>
<script src="./resources/sxg-util.js"></script>
<body>
<script>
(() => {
  const REMOTE_ORIGIN = get_host_info().HTTPS_REMOTE_ORIGIN;
  const REMOTE_ORIGIN_SXG = 'sxg-referrer-remote-origin.sxg';
  const TEST_CASES = [
    // Physical origin = remote origin. Logical origin = remote origin.
    {
      origin: REMOTE_ORIGIN,
      sxg: REMOTE_ORIGIN_SXG,
      referrerPolicy: undefined,
      expectedReferrer: document.location.href
    },
    {
      origin: REMOTE_ORIGIN,
      sxg: REMOTE_ORIGIN_SXG,
      referrerPolicy: 'no-referrer',
      expectedReferrer: ''
    },
    {
      origin: REMOTE_ORIGIN,
      sxg: REMOTE_ORIGIN_SXG,
      referrerPolicy: 'no-referrer-when-downgrade',
      expectedReferrer: document.location.href
    },
    {
      origin: REMOTE_ORIGIN,
      sxg: REMOTE_ORIGIN_SXG,
      referrerPolicy: 'origin',
      expectedReferrer: document.location.origin + '/'
    },
    {
      origin: REMOTE_ORIGIN,
      sxg: REMOTE_ORIGIN_SXG,
      referrerPolicy: 'same-origin',
      expectedReferrer: ''
    },
    {
      origin: REMOTE_ORIGIN,
      sxg: REMOTE_ORIGIN_SXG,
      referrerPolicy: 'strict-origin',
      expectedReferrer: document.location.origin + '/'
    },
    {
      origin: REMOTE_ORIGIN,
      sxg: REMOTE_ORIGIN_SXG,
      referrerPolicy: 'strict-origin-when-cross-origin',
      expectedReferrer: document.location.origin + '/'
    },
    {
      origin: REMOTE_ORIGIN,
      sxg: REMOTE_ORIGIN_SXG,
      referrerPolicy: 'unsafe-url',
      expectedReferrer: document.location.href
    },
  ];
  runReferrerTests(TEST_CASES);
})();
</script>
</body>
