<html>
<head>
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.dumpChildFramesAsText();
    testRunner.waitUntilDone();
}
</script>
</head>
<body>
<p>
This test checks the referrer policy is obeyed along the redirect chain.  The
test passes if the referrer is http://127.0.0.1:8000
</p>
<iframe src="http://127.0.0.1:8000/security/resources/referrer-policy-redirect.html"></iframe>
</body>
</html>
