summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/service-workers/stub-4.6.3-cache-storage.html
blob: 3f9e9b438f0de8cebdec8aa6cbccaaf4d0e6498f (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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<!DOCTYPE html>
<html>
<title>Service Workers: CacheStorage</title>
    <head>
        <link rel="help" href="https://w3c.github.io/ServiceWorker/#cache-storage">
        <script src="/resources/testharness.js"></script>
        <script src="/resources/testharnessreport.js"></script>

        <script src=/resources/WebIDLParser.js></script>
        <script src=/resources/idlharness.js></script>

    </head>
    <body>

<script type=text/plain id="idl_0">
[Constructor(sequence<any> iterable)]
interface CacheStorage {
  Promise<any> match(ScalarValueString url, optional DOMString cacheName);
  Promise<Cache> get(DOMString key);
  Promise<boolean> has(DOMString key);
  Promise<any> set(DOMString key, Cache val);
  Promise<any> clear();
  Promise<any> delete(DOMString key);
  void forEach(CacheStorageIterationCallback callback, optional object thisArg);
  Promise<sequence<any>> entries();
  Promise<sequence<DOMString>> keys();
  Promise<sequence<Cache>> values();
  Promise<unsigned long> size();
};

callback CacheStorageIterationCallback = void (Cache value, DOMString key, CacheStorage map);
</pre>

<!--
**Note**:[CacheStorage][1]interface is designed to largely conform
to[ECMAScript 6 Map objects][2]but entirely async, and with additional
convenience methods.

[1]: #cache-storage-interface
[2]: http://goo.gl/gNnDPO
-->


    <script type=text/plain id="untested_idls">
        interface ScalarValueString {};
        interface Cache {};
    </pre>

    <script>
        var idl_array = new IdlArray();
        idl_array.add_untested_idls(document.getElementById("untested_idls").textContent);
        idl_array.add_idls(document.getElementById("idl_0").textContent);
        idl_array.add_objects({
            CacheStorage: ["throw new Error ('No object defined for the CacheStorage interface')"],
            CacheStorageIterationCallback: ["throw new Error ('No object defined for the CacheStorageIterationCallback callback')"]
        });
        idl_array.test();
    </script>

    </body>
</html>