<!DOCTYPE html><!-- webkit-test-runner [ dumpJSConsoleLogInStdErr=true ] -->
<html>
<head>
<script src="/js-test-resources/js-test.js"></script>
</head>
<body>
<script>
description("Tests the behavior of strict-origin-when-cross-origin referrer policy when cross origin from HTTPS to HTTP.");
jsTestIsAsync = true;

if (window.internals)
    internals.settings.setAllowRunningOfInsecureContent(true);

function checkReferrer(value) {
    referrer = value;
    // Should be the empty string because we are cross-origin and going from HTTPS to HTTP.
    shouldBeEqualToString("referrer", "");
    finishJSTest();
}

if (window.testRunner) {
    testRunner.setStatisticsShouldDowngradeReferrer(false, function () { downgradeReferrerCallback('strict-origin-when-top-origin', 'localhost')});
}
</script>
</body>
</html>
