summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/client-hints/resources/viewport-frame.py
blob: 67b592c71a7e5c14f85736703a57d3cd812f6c7c (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
def main(request, response):
    """
    postMessage with Viewport-Width and Sec-Ch-Viewport-Height headers
    """

    if b"sec-ch-viewport-width" in request.headers:
        width = request.headers["sec-ch-viewport-width"]
    else:
        width = b"FAIL"

    if b"sec-ch-viewport-height" in request.headers:
        height = request.headers["sec-ch-viewport-height"]
    else:
        height = b"FAIL"

    headers = [(b"Content-Type", b"text/html"),
               (b"Access-Control-Allow-Origin", b"*")]
    content = b'''
<script>
  let parentOrOpener = window.opener || window.parent;
  parentOrOpener.postMessage({ viewportWidth: '%s', viewportHeight: '%s' }, "*");
</script>
''' % (width, height)

    return 200, headers, content