summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/service-workers/service-worker/resources/update-max-aged-worker.py
blob: 4f879069ef98ad7ff738cf144fe1fd75fdd1089e (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
import time
import json

from wptserve.utils import isomorphic_decode, isomorphic_encode

def main(request, response):
    headers = [(b'Content-Type', b'application/javascript'),
               (b'Cache-Control', b'max-age=86400'),
               (b'Last-Modified', isomorphic_encode(time.strftime(u"%a, %d %b %Y %H:%M:%S GMT", time.gmtime())))]

    test = request.GET[b'test']

    body = u'''
        const mainTime = {time:8f};
        const testName = {test};
        importScripts('update-max-aged-worker-imported-script.py');

        addEventListener('message', event => {{
            event.source.postMessage({{
                mainTime,
                importTime,
                test: {test}
            }});
        }});
    '''.format(
        time=time.time(),
        test=json.dumps(isomorphic_decode(test))
    )

    return headers, body