| <!doctype html> |
| <html> |
| <head> |
| <meta charset="utf-8"> |
| <title>Blob and range request</title> |
| <meta name="help" href="https://fetch.spec.whatwg.org/#request"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| </head> |
| <body> |
| <script> |
| |
| promise_test(async () => { |
| const blobSize = [990043, 804394, 1488722, 940287, 796558, 1934954, 951421, 1694735, 416322, 466642]; |
| const blobs = blobSize.map(size => new Blob([new ArrayBuffer(size)])); |
| const blob = new Blob(blobs, { type: 'video/mp4' }); |
| const url = window.URL.createObjectURL(blob); |
| |
| let request = new Request(url, { headers : { "Range" : "bytes=0-1" } }); |
| await fetch(request); |
| |
| request = new Request(url, { headers : { "Range" : "bytes=0-62470047" } }); |
| await fetch(request); |
| |
| request = new Request(url, { headers : { "Range" : "bytes=3257139-7195852" } }); |
| const response = await fetch(request); |
| assert_equals(response.status, 206); |
| await response.arrayBuffer(); |
| }, "Do blob range requests"); |
| </script> |
| </body> |
| </html> |