<!DOCTYPE html>
<html>
<head>
<script src="/js-test-resources/js-test.js"></script>
</head>
<body>
<script>
description("Tests the behavior of unsafe-url referrer policy when cross origin.");
jsTestIsAsync = true;

if (window.internals)
    internals.setResourceLoadStatisticsEnabled(true);

function checkReferrer(value) {
    referrer = value;
    // Should be the full URL
    shouldBeEqualToString("referrer", "http://127.0.0.1:8000/referrer-policy-script/unsafe-url/cross-origin-http-http.html");
    finishJSTest();
}

if (window.testRunner) {
    testRunner.setStatisticsShouldDowngradeReferrer(false, function () { downgradeReferrerCallback('unsafe-url', 'localhost') });
}
</script>
</body>
</html>
