Index: third_party/WebKit/LayoutTests/imported/wpt/service-workers/service-worker/resources/fetch-event-redirect-iframe.html |
diff --git a/third_party/WebKit/LayoutTests/imported/wpt/service-workers/service-worker/resources/fetch-event-redirect-iframe.html b/third_party/WebKit/LayoutTests/imported/wpt/service-workers/service-worker/resources/fetch-event-redirect-iframe.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..7548d8af7d6014f24ec928d905686107bf8c361c |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/imported/wpt/service-workers/service-worker/resources/fetch-event-redirect-iframe.html |
@@ -0,0 +1,25 @@ |
+<script> |
+window.addEventListener('message', function(evt) { |
+ var port = evt.ports[0]; |
+ var data = evt.data; |
+ fetch(new Request(data.url, data.request_init)).then(function(response) { |
+ if (data.request_init.mode === 'no-cors' && data.redirect_dest != 'same-origin') { |
+ if (response.type === data.expected_type && |
+ (response.type === 'opaque' || response.type === 'opaqueredirect') && |
+ response.redirected === data.expected_redirected) { |
+ return {result: 'success', detail: ''}; |
+ } else { |
+ return {result: 'failure', |
+ detail: 'expected type ' + data.expected_type + |
+ ', expected redirected ' + data.expected_redirected + |
+ ' response'}; |
+ } |
+ } |
+ return response.json(); |
+ }).then(function(body) { |
+ port.postMessage({result: body.result, detail: body.detail}); |
+ }).catch(function(e) { |
+ port.postMessage({result: 'reject', detail: e.toString()}); |
+ }); |
+}); |
+</script> |