| OLD | NEW |
| 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 client.focus().catch(function() { | 9 client.focus().catch(function() { |
| 10 self.postMessage('focus() outside of a notificationclick event faile
d'); | 10 self.postMessage('focus() outside of a notificationclick event faile
d'); |
| 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 client.focus().then(function() { | 16 client.focus().then(function() { |
| 17 self.postMessage('focus() in notificationclick outside of waitUn
til but in stack succeeded'); | 17 self.postMessage('focus() in notificationclick outside of waitUn
til 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 client.focus().catch(function() { | 25 client.focus().catch(function() { |
| 26 self.postMessage('focus() in notificationclick outside of wa
itUntil not in stack failed'); | 26 self.postMessage('focus() in notificationclick outside of wa
itUntil not in stack failed'); |
| 27 }).then(runNextTestOrQuit); | 27 }).then(runNextTestOrQuit); |
| 28 }); | 28 }); |
| 29 }); | 29 }); |
| 30 }, | 30 }, |
| 31 | 31 |
| 32 function testInWaitUntilAsync() { | 32 function testInWaitUntilAsync() { |
| 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 client.focus().then(function() { | 35 return client.focus().then(function() { |
| 36 self.postMessage('focus() in notificationclick\'s waitUntil
suceeded'); | 36 self.postMessage('focus() in notificationclick\'s waitUntil
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 client.focus().then(function() { | 45 return client.focus().then(function() { |
| 46 return client.focus(); | 46 return client.focus(); |
| 47 }).catch(function() { | 47 }).catch(function() { |
| 48 self.postMessage('focus() called twice failed'); | 48 self.postMessage('focus() called twice failed'); |
| 49 }).then(runNextTestOrQuit); | 49 }).then(runNextTestOrQuit); |
| 50 })); | 50 })); |
| 51 }); | 51 }); |
| 52 }, | 52 }, |
| 53 | 53 |
| 54 function testWaitUntilTimeout() { | 54 function testWaitUntilTimeout() { |
| (...skipping 26 matching lines...) Expand all Loading... |
| 81 self.onmessage = function(e) { | 81 self.onmessage = function(e) { |
| 82 if (e.data == 'start') { | 82 if (e.data == 'start') { |
| 83 initialize().then(runNextTestOrQuit); | 83 initialize().then(runNextTestOrQuit); |
| 84 } else { | 84 } else { |
| 85 initialize().then(function() { | 85 initialize().then(function() { |
| 86 self.postMessage('received unexpected message'); | 86 self.postMessage('received unexpected message'); |
| 87 self.postMessage('quit'); | 87 self.postMessage('quit'); |
| 88 }); | 88 }); |
| 89 } | 89 } |
| 90 }; | 90 }; |
| OLD | NEW |