summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/common/security-features/scope/template/document.html.template
blob: 37e29f8e97febb831e911d9bd985f4bb10133cad (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
<!DOCTYPE html>
<html>
  <head>
    %(meta)s
    <script src="/common/security-features/resources/common.sub.js"></script>
    <script>
    // Receive a message from the parent and start the test.
    function onMessageFromParent(event) {
      // Because this window might receive messages from child iframe during
      // tests, we first remove the listener here before staring the test.
      window.removeEventListener('message', onMessageFromParent);

      const configurationError = "%(error)s";
      if (configurationError.length > 0) {
        parent.postMessage({error: configurationError}, "*");
        return;
      }

      invokeRequest(event.data.subresource,
                    event.data.sourceContextList)
        .then(result => parent.postMessage(result, "*"))
        .catch(e => {
            const message = (e.error && e.error.stack) || e.message || "Error";
            parent.postMessage({error: message}, "*");
          });
    }
    window.addEventListener('message', onMessageFromParent);
    </script>
  </head>
</html>