Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(205)

Unified Diff: LayoutTests/http/tests/serviceworker/resources/cache-storage-keys-worker.js

Issue 430993002: [ServiceWorker] CacheStorage tests. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: TYpoS. Delete caches before creating. No hack for JS Error objects. Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: LayoutTests/http/tests/serviceworker/resources/cache-storage-keys-worker.js
diff --git a/LayoutTests/http/tests/serviceworker/resources/cache-storage-keys-worker.js b/LayoutTests/http/tests/serviceworker/resources/cache-storage-keys-worker.js
new file mode 100644
index 0000000000000000000000000000000000000000..a3a7315d95bd5739d3fec0da0dd3fb22c7f7b088
--- /dev/null
+++ b/LayoutTests/http/tests/serviceworker/resources/cache-storage-keys-worker.js
@@ -0,0 +1,34 @@
+importScripts('worker-test-harness.js');
+
+var test_cache_list =
+ ['', 'example', 'Another cache name', 'A', 'a', 'ex ample'];
+
+promise_test(function(test) {
+ return self.caches.keys()
+ .then(function(keys) {
+ assert_true(Array.isArray(keys),
+ 'CacheStorage.keys should return an Array.');
+ if (keys.length > 0) {
+ return Promise.all(keys.map(function(key) {
+ return self.caches.delete(key);
+ }));
+ } else {
+ return Promise.resolve(true);
jsbell 2014/08/28 21:07:26 No need for this special case if keys.length === 0
asanka 2014/08/28 21:59:46 Done.
+ }
+ })
+ .then(function() {
+ return Promise.all(test_cache_list.map(function(key) {
+ return self.caches.create(key);
+ }));
+ })
+
+ .then(function() { return self.caches.keys(); })
+ .then(function(keys) {
+ assert_true(Array.isArray(keys),
+ 'CacheStorage.keys should return an Array.');
+ assert_array_equals(keys,
jsbell 2014/08/28 21:07:26 Order is apparently not guaranteed. Needs an "equi
jsbell 2014/08/28 21:49:01 Apparently we're supposed to preserve the order, s
asanka 2014/08/28 21:59:46 Acknowledged.
+ test_cache_list,
+ 'CacheStorage.keys should only return ' +
+ 'existing caches.');
+ });
+ }, 'CacheStorage keys');

Powered by Google App Engine
This is Rietveld 408576698