Source code

Revision control

Copy as Markdown

Other Tools

Test Info: Warnings

<!DOCTYPE html>
<title>Referrer of SignedHTTPExchange(physical:remote origin, logical:remote origin)</title>
<meta name="timeout" content="long">
<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.origin + '/'
},
{
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>