| OLD | NEW |
| 1 // Common helper functions for foreign fetch tests. | 1 // Common helper functions for foreign fetch tests. |
| 2 | 2 |
| 3 // Installs a service worker on a different origin. Both |worker| and |scope| | 3 // Installs a service worker on a different origin. Both |worker| and |scope| |
| 4 // are resolved relative to the /serviceworker/resources/ directory on a | 4 // are resolved relative to the /serviceworker/resources/ directory on a |
| 5 // remote origin. | 5 // remote origin. |
| 6 function install_cross_origin_worker( | 6 function install_cross_origin_worker(t, worker, scope) { |
| 7 t, worker, scope, origin = get_host_info().HTTPS_REMOTE_ORIGIN) { | 7 return with_iframe(get_host_info().HTTPS_REMOTE_ORIGIN + |
| 8 return with_iframe(origin + | |
| 9 '/serviceworker/resources/install-worker-helper.html') | 8 '/serviceworker/resources/install-worker-helper.html') |
| 10 .then(frame => new Promise((resolve, reject) => { | 9 .then(frame => new Promise((resolve, reject) => { |
| 11 var channel = new MessageChannel(); | 10 var channel = new MessageChannel(); |
| 12 frame.contentWindow.postMessage({worker: worker, | 11 frame.contentWindow.postMessage({worker: worker, |
| 13 options: {scope: scope}, | 12 options: {scope: scope}, |
| 14 port: channel.port1}, | 13 port: channel.port1}, |
| 15 '*', [channel.port1]); | 14 '*', [channel.port1]); |
| 16 channel.port2.onmessage = reply => { | 15 channel.port2.onmessage = reply => { |
| 17 if (reply.data == 'success') resolve(); | 16 if (reply.data == 'success') resolve(); |
| 18 else reject(reply.data); | 17 else reject(reply.data); |
| 19 }; | 18 }; |
| 20 })); | 19 })); |
| 21 } | 20 } |
| OLD | NEW |