diff options
Diffstat (limited to 'dom/cache/test/mochitest/test_chrome_constructor.html')
-rw-r--r-- | dom/cache/test/mochitest/test_chrome_constructor.html | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/dom/cache/test/mochitest/test_chrome_constructor.html b/dom/cache/test/mochitest/test_chrome_constructor.html new file mode 100644 index 0000000000..fbce2d0162 --- /dev/null +++ b/dom/cache/test/mochitest/test_chrome_constructor.html @@ -0,0 +1,44 @@ +<!-- Any copyright is dedicated to the Public Domain. + - http://creativecommons.org/publicdomain/zero/1.0/ --> +<!DOCTYPE HTML> +<html> +<head> + <title>Validate Interfaces Exposed to Workers</title> + <script src="/tests/SimpleTest/SimpleTest.js"></script> + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> +</head> +<body> +<script class="testbody" type="text/javascript"> + SimpleTest.waitForExplicitFinish(); + + SpecialPowers.pushPrefEnv({ + "set": [["dom.caches.enabled", true], + ["dom.caches.testing.enabled", true]], + }, function() { + // attach to a different origin's CacheStorage + var url = "https://example.com/"; + var storage = SpecialPowers.createChromeCache("content", url); + + // verify we can use the other origin's CacheStorage as normal + var req = new Request("https://example.com/index.html"); + var res = new Response("hello world"); + var cache; + storage.open("foo").then(function(c) { + cache = c; + ok(cache, "storage should create cache"); + return cache.put(req, res.clone()); + }).then(function() { + return cache.match(req); + }).then(function(foundResponse) { + return Promise.all([res.text(), foundResponse.text()]); + }).then(function(results) { + is(results[0], results[1], "cache should contain response"); + return storage.delete("foo"); + }).then(function(deleted) { + ok(deleted, "storage should delete cache"); + SimpleTest.finish(); + }); + }); +</script> +</body> +</html> |