summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/referrer-policy/generic/inheritance/iframe-inheritance-srcdoc-child.html
blob: cd4b4ae724814625b210b5fc96ecf5ecef321822 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<!DOCTYPE html>
<html>
  <head>
    <title>Referrer Policy: iframes srdoc child correctly inherit the ancestor's referrer policy</title>
    <link rel="help" href="https://www.w3.org/TR/referrer-policy/#referrer-policy-delivery-nested">
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
    <script src="/common/get-host-info.sub.js"></script>
    <script src="resources/make-html-script.js"></script>
    <meta name="referrer" content="origin">
  </head>
  <body onload="runTest()">
    <h1>Referrer Policy: iframes srcdoc child correctly inherit the ancestor's referrer policy</h1>
    <script>
      var test = async_test("iframes srcdoc child correctly inherit the ancestor's referrer policy");
      window.addEventListener("message", test.step_func_done(msg => {
        assert_equals(msg.data.referrer, self.origin + "/");
      }));

      function runTest() {
        var iframe = document.createElement("iframe");
        iframe.srcdoc = `<body><h1>Outer iframe</h1></body>`;
        iframe.onload = test.step_func(() => {
          iframe.onload = null;
          var iframeChild =  iframe.contentDocument.createElement("iframe");
          iframeChild.srcdoc = createScriptString(get_host_info().REMOTE_ORIGIN);
          iframe.contentDocument.body.appendChild(iframeChild);
        });
        document.body.appendChild(iframe);
      }
    </script>
    <div id="log"></div>
  </body>
</html>