Bug 1796551 [wpt PR 36570] - WebKit export of https://bugs.webkit.org/show_bug.cgi...
[gecko.git] / netwerk / test / unit / test_cache2-01b-basic-datasize.js
blob9c41e114c3f814dff6cd8260befc50e1cd9c0633
1 "use strict";
3 function run_test() {
4   do_get_profile();
6   // Open for write, write
7   asyncOpenCacheEntry(
8     "http://a/",
9     "disk",
10     Ci.nsICacheStorage.OPEN_NORMALLY,
11     null,
12     new OpenCallback(NEW | WAITFORWRITE, "a1m", "a1d", function(entry) {
13       // Open for read and check
14       Assert.equal(entry.dataSize, 3);
15       asyncOpenCacheEntry(
16         "http://a/",
17         "disk",
18         Ci.nsICacheStorage.OPEN_NORMALLY,
19         null,
20         new OpenCallback(NORMAL, "a1m", "a1d", function(entry) {
21           // Open for rewrite (truncate), write different meta and data
22           Assert.equal(entry.dataSize, 3);
23           asyncOpenCacheEntry(
24             "http://a/",
25             "disk",
26             Ci.nsICacheStorage.OPEN_TRUNCATE,
27             null,
28             new OpenCallback(NEW | WAITFORWRITE, "a2m", "a2d", function(entry) {
29               // Open for read and check
30               Assert.equal(entry.dataSize, 3);
31               asyncOpenCacheEntry(
32                 "http://a/",
33                 "disk",
34                 Ci.nsICacheStorage.OPEN_NORMALLY,
35                 null,
36                 new OpenCallback(NORMAL, "a2m", "a2d", function(entry) {
37                   Assert.equal(entry.dataSize, 3);
38                   finish_cache2_test();
39                 })
40               );
41             })
42           );
43         })
44       );
45     })
46   );
48   do_test_pending();