| Index: LayoutTests/http/tests/serviceworker/resources/fetch-event-test-worker.js
|
| diff --git a/LayoutTests/http/tests/serviceworker/resources/fetch-event-test-worker.js b/LayoutTests/http/tests/serviceworker/resources/fetch-event-test-worker.js
|
| index 8e906cbb6a9e9f1d04d588a224e1d9ab46e59c7e..a925ffe2b3071db24992f71b19e65b7f4289ab2e 100644
|
| --- a/LayoutTests/http/tests/serviceworker/resources/fetch-event-test-worker.js
|
| +++ b/LayoutTests/http/tests/serviceworker/resources/fetch-event-test-worker.js
|
| @@ -1,51 +1,64 @@
|
| function handleString(event) {
|
| - event.respondWith(new Response('Test string'));
|
| + event.respondWith(new Response('Test string'));
|
| }
|
|
|
| function handleBlob(event) {
|
| - event.respondWith(new Response(new Blob(['Test blob'])));
|
| + event.respondWith(new Response(new Blob(['Test blob'])));
|
| }
|
|
|
| function handleReferrer(event) {
|
| - event.respondWith(new Response(new Blob(['Referrer: ' + event.request.referrer])));
|
| + event.respondWith(new Response(new Blob(
|
| + ['Referrer: ' + event.request.referrer])));
|
| }
|
|
|
| function handleNullBody(event) {
|
| - event.respondWith(new Response(null));
|
| + event.respondWith(new Response(null));
|
| }
|
|
|
| function handleReject(event) {
|
| - event.respondWith(new Promise(function(resolve, reject) {
|
| - reject('rejected!');
|
| + event.respondWith(new Promise(function(resolve, reject) {
|
| + reject('rejected!');
|
| }));
|
| }
|
|
|
| function handleFetch(event) {
|
| - event.respondWith(fetch('other.html'));
|
| + event.respondWith(fetch('other.html'));
|
| +}
|
| +
|
| +function handleFormPost(event) {
|
| + event.respondWith(new Promise(function(resolve) {
|
| + event.request.body.asText()
|
| + .then(function(result) {
|
| + resolve(new Response(event.request.method + ':' + result));
|
| + })
|
| + }));
|
| }
|
|
|
| self.addEventListener('fetch', function(event) {
|
| var url = event.request.url;
|
| var handlers = [
|
| - { pattern: '?string', fn: handleString },
|
| - { pattern: '?blob', fn: handleBlob },
|
| - { pattern: '?referrer', fn: handleReferrer },
|
| - { pattern: '?ignore', fn: function() {} },
|
| - { pattern: '?null', fn: handleNullBody },
|
| - { pattern: '?reject', fn: handleReject },
|
| - { pattern: '?fetch', fn: handleFetch }
|
| + { pattern: '?string', fn: handleString },
|
| + { pattern: '?blob', fn: handleBlob },
|
| + { pattern: '?referrer', fn: handleReferrer },
|
| + { pattern: '?ignore', fn: function() {} },
|
| + { pattern: '?null', fn: handleNullBody },
|
| + { pattern: '?reject', fn: handleReject },
|
| + { pattern: '?fetch', fn: handleFetch },
|
| + { pattern: '?form-post', fn: handleFormPost }
|
| ];
|
|
|
| var handler = null;
|
| for (var i = 0; i < handlers.length; ++i) {
|
| - if (url.indexOf(handlers[i].pattern) != -1) {
|
| - handler = handlers[i];
|
| - break;
|
| - }
|
| + if (url.indexOf(handlers[i].pattern) != -1) {
|
| + handler = handlers[i];
|
| + break;
|
| + }
|
| }
|
|
|
| - if (handler)
|
| - handler.fn(event);
|
| - else
|
| - event.respondWith(new Response(new Blob(['Service Worker got an unexpected request: ' + url])));
|
| -});
|
| + if (handler) {
|
| + handler.fn(event);
|
| + } else {
|
| + event.respondWith(new Response(new Blob(
|
| + ['Service Worker got an unexpected request: ' + url])));
|
| + }
|
| + });
|
|
|