| OLD | NEW | 
|---|
|  | (Empty) | 
| 1 <!DOCTYPE html> |  | 
| 2 <script> |  | 
| 3 function fetch_url(url) { |  | 
| 4   return new Promise(function(resolve, reject) { |  | 
| 5       var request = new XMLHttpRequest(); |  | 
| 6       request.addEventListener('load', function(event) { |  | 
| 7           resolve(); |  | 
| 8         }); |  | 
| 9       request.addEventListener('error', function(event) { |  | 
| 10           reject(); |  | 
| 11         }); |  | 
| 12       request.open('GET', url); |  | 
| 13       request.send(); |  | 
| 14     }); |  | 
| 15 } |  | 
| 16 |  | 
| 17 function make_test(testcase) { |  | 
| 18   var name = testcase.name; |  | 
| 19   return fetch_url(window.location.href + '?' + name) |  | 
| 20     .then( |  | 
| 21       function() { |  | 
| 22           if (testcase.expect_load) |  | 
| 23             return Promise.resolve(); |  | 
| 24           return Promise.reject(new Error( |  | 
| 25               name + ': expected network error but loaded')); |  | 
| 26         }, |  | 
| 27       function() { |  | 
| 28           if (!testcase.expect_load) |  | 
| 29             return Promise.resolve(); |  | 
| 30           return Promise.reject(new Error( |  | 
| 31               name + ': expected to load but got network error')); |  | 
| 32         }); |  | 
| 33 } |  | 
| 34 |  | 
| 35 function run_tests() { |  | 
| 36   var tests = [ |  | 
| 37     { name: 'response-object', expect_load: true }, |  | 
| 38     { name: 'response-promise-object', expect_load: true }, |  | 
| 39     { name: 'other-value', expect_load: false }, |  | 
| 40   ].map(make_test); |  | 
| 41 |  | 
| 42   Promise.all(tests) |  | 
| 43     .then(function() { |  | 
| 44         window.parent.notify_test_done('PASS'); |  | 
| 45       }) |  | 
| 46     .catch(function(error) { |  | 
| 47         window.parent.notify_test_done('FAIL: ' + error.message); |  | 
| 48       }); |  | 
| 49 } |  | 
| 50 |  | 
| 51 if (!navigator.serviceWorker.controller) |  | 
| 52   window.parent.notify_done('FAIL: no controller'); |  | 
| 53 else |  | 
| 54   run_tests(); |  | 
| 55 </script> |  | 
| OLD | NEW | 
|---|