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

Side by Side Diff: LayoutTests/http/tests/serviceworker/chromium/resources/notificationclick-can-openwindow.js

Issue 1056973003: Revert of Revert of ServiceWorker: Remove Clients.getAll() (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 years, 8 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 unified diff | Download patch
OLDNEW
1 // This helper will setup a small test framework that will use TESTS and run 1 // This helper will setup a small test framework that will use TESTS and run
2 // them sequentially and call self.postMessage('quit') when done. 2 // them sequentially and call self.postMessage('quit') when done.
3 // This helper also exposes |client|, |postMessage()|, |runNextTestOrQuit()|, 3 // This helper also exposes |client|, |postMessage()|, |runNextTestOrQuit()|,
4 // |synthesizeNotificationClick()| and |initialize()|. 4 // |synthesizeNotificationClick()| and |initialize()|.
5 importScripts('sw-test-helpers.js'); 5 importScripts('sw-test-helpers.js');
6 6
7 var TESTS = [ 7 var TESTS = [
8 function testWithNoNotificationClick() { 8 function testWithNoNotificationClick() {
9 clients.openWindow('/foo.html').catch(function() { 9 clients.openWindow('/foo.html').catch(function() {
10 self.postMessage('openWindow() outside of a notificationclick event failed'); 10 self.postMessage('openWindow() outside of a notificationclick event failed');
11 }).then(runNextTestOrQuit); 11 }).then(runNextTestOrQuit);
12 }, 12 },
13 13
14 function testInStackOutOfWaitUntil() { 14 function testInStackOutOfWaitUntil() {
15 synthesizeNotificationClick().then(function() { 15 synthesizeNotificationClick().then(function() {
16 clients.openWindow('/foo.html').then(function() { 16 clients.openWindow('/foo.html').then(function() {
17 self.postMessage('openWindow() in notificationclick outside of w aitUntil but in stack succeeded'); 17 self.postMessage('openWindow() in notificationclick outside of w aitUntil but in stack succeeded');
18 }).then(runNextTestOrQuit); 18 }).then(runNextTestOrQuit);
19 }); 19 });
20 }, 20 },
21 21
22 function testOutOfStackOutOfWaitUntil() { 22 function testOutOfStackOutOfWaitUntil() {
23 synthesizeNotificationClick().then(function() { 23 synthesizeNotificationClick().then(function() {
24 self.clients.getAll().then(function() { 24 self.clients.matchAll().then(function() {
25 clients.openWindow('/foo.html').catch(function() { 25 clients.openWindow('/foo.html').catch(function() {
26 self.postMessage('openWindow() in notificationclick outside of waitUntil not in stack failed'); 26 self.postMessage('openWindow() in notificationclick outside of waitUntil not in stack failed');
27 }).then(runNextTestOrQuit); 27 }).then(runNextTestOrQuit);
28 }); 28 });
29 }); 29 });
30 }, 30 },
31 31
32 function testInWaitUntilAsyncAndDoubleCall() { 32 function testInWaitUntilAsyncAndDoubleCall() {
33 synthesizeNotificationClick().then(function(e) { 33 synthesizeNotificationClick().then(function(e) {
34 e.waitUntil(self.clients.getAll().then(function() { 34 e.waitUntil(self.clients.matchAll().then(function() {
35 return clients.openWindow('/foo.html').then(function() { 35 return clients.openWindow('/foo.html').then(function() {
36 self.postMessage('openWindow() in notificationclick\'s waitU ntil suceeded'); 36 self.postMessage('openWindow() in notificationclick\'s waitU ntil suceeded');
37 }).then(runNextTestOrQuit); 37 }).then(runNextTestOrQuit);
38 })); 38 }));
39 }); 39 });
40 }, 40 },
41 41
42 function testDoubleCallInWaitUntilAsync() { 42 function testDoubleCallInWaitUntilAsync() {
43 synthesizeNotificationClick().then(function(e) { 43 synthesizeNotificationClick().then(function(e) {
44 e.waitUntil(self.clients.getAll().then(function() { 44 e.waitUntil(self.clients.matchAll().then(function() {
45 return clients.openWindow('/foo.html').then(function() { 45 return clients.openWindow('/foo.html').then(function() {
46 return clients.openWindow('/foo.html'); 46 return clients.openWindow('/foo.html');
47 }).catch(function() { 47 }).catch(function() {
48 self.postMessage('openWindow() called twice failed'); 48 self.postMessage('openWindow() called twice failed');
49 }).then(runNextTestOrQuit); 49 }).then(runNextTestOrQuit);
50 })); 50 }));
51 }); 51 });
52 }, 52 },
53 53
54 54
(...skipping 27 matching lines...) Expand all
82 self.onmessage = function(e) { 82 self.onmessage = function(e) {
83 if (e.data == 'start') { 83 if (e.data == 'start') {
84 initialize().then(runNextTestOrQuit); 84 initialize().then(runNextTestOrQuit);
85 } else { 85 } else {
86 initialize().then(function() { 86 initialize().then(function() {
87 self.postMessage('received unexpected message'); 87 self.postMessage('received unexpected message');
88 self.postMessage('quit'); 88 self.postMessage('quit');
89 }); 89 });
90 } 90 }
91 }; 91 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698