Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 <!DOCTYPE html> | |
| 2 <html> | |
| 3 <title>Service Worker: Memory Cache</title> | |
| 4 <script src="../../resources/testharness.js"></script> | |
| 5 <script src="../../resources/testharnessreport.js"></script> | |
| 6 <script src="../resources/test-helpers.js"></script> | |
| 7 <script> | |
| 8 var callback; | |
| 9 | |
| 10 function getJSON(url) { | |
|
horo
2014/10/10 06:27:38
nit: getJSONP is better.
nhiroki
2014/10/10 07:33:12
Done.
| |
| 11 var sc = document.createElement('script'); | |
| 12 sc.src = url; | |
| 13 document.body.appendChild(sc); | |
| 14 return new Promise(function(resolve) { | |
| 15 // This callback function is called by appending a script element. | |
| 16 callback = function(data) { resolve(data); } | |
| 17 }); | |
| 18 } | |
| 19 | |
| 20 async_test(function(t) { | |
| 21 var scope = 'resources/memory-cache-controlled.html'; | |
| 22 var worker = 'resources/memory-cache-worker.js'; | |
| 23 var json_url = '/serviceworker/chromium/resources/memory-cache.jsonp'; | |
| 24 var registration; | |
| 25 var frame; | |
| 26 var promises = []; | |
| 27 | |
| 28 service_worker_unregister_and_register(t, worker, scope) | |
| 29 .then(function(r) { | |
| 30 registration = r; | |
| 31 return wait_for_activated(t, registration); | |
| 32 }) | |
| 33 .then(function() { return with_iframe(scope); }) | |
| 34 .then(function(f) { | |
| 35 frame = f; | |
| 36 // Request a json file from controlled page. | |
| 37 promises.push(frame.contentWindow.getJSON(json_url)); | |
| 38 // Request a json file from non-controlled page. | |
| 39 promises.push(getJSON(json_url)); | |
| 40 return Promise.all(promises); | |
| 41 }) | |
| 42 .then(function(results) { | |
| 43 assert_equals( | |
| 44 results[0].src, | |
| 45 'service worker', | |
| 46 'Response for controlled page should be served by Service Worker'); | |
| 47 assert_equals( | |
| 48 results[1].src, | |
| 49 'network', | |
| 50 'Response for non-controlled page should be served by network'); | |
| 51 unload_iframe(frame); | |
| 52 return registration.unregister(); | |
| 53 }) | |
| 54 .then(function() { | |
| 55 t.done(); | |
| 56 }) | |
| 57 .catch(unreached_rejection(t)); | |
| 58 }, 'Non-controlled page should not use a cache filled by Service Worker'); | |
| 59 </script> | |
| OLD | NEW |