<!DOCTYPE html>
<title>Service Worker: Middle nested iframe for partitioned service workers</title>
<script src="./test-helpers.sub.js"></script>
<script src="/common/get-host-info.sub.js"></script>
<script src="./partitioned-utils.js"></script>

<body>
Middle of the nested iframes (3p ancestor or B in A1-B-A2).
<script>

async function onLoad() {
  // The innermost iframe will recieve a message from the
  // ServiceWorker and pass it to this iframe. We need to
  // then pass that message to the main frame to complete
  // the test.
  self.addEventListener('message', evt => {
      window.parent.postMessage(evt.data, '*');
  });

  // Embed the innermost iframe and set-up the service worker there.
  const innermost_iframe_url = new URL('./partitioned-service-worker-nested-iframe-child.html',
    get_host_info().HTTPS_ORIGIN + self.location.pathname);
  var frame = document.createElement('iframe');
  frame.src = innermost_iframe_url;
  document.body.appendChild(frame);
}

self.addEventListener('load', onLoad);
</script>
</body>