| <!doctype html> |
| <html> |
| <head> |
| <title>Fetch: network timeout after receiving the HTTP response headers</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="../resources/utils.js"></script> |
| </head> |
| <body> |
| <div id="log"></div> |
| <script> |
| function checkReader(test, reader, promiseToTest) |
| { |
| return reader.read().then((value) => { |
| validateBufferFromString(value.value, "TEST_CHUNK", "Should receive first chunk"); |
| return promise_rejects(test, new TypeError(), promiseToTest(reader)); |
| }); |
| } |
| |
| promise_test((test) => { |
| return fetch("../resources/bad-chunk-encoding.py?count=1").then((response) => { |
| return checkReader(test, response.body.getReader(), reader => reader.read()); |
| }); |
| }, "Response reader read() promise should reject after a network error happening after resolving fetch promise"); |
| |
| promise_test((test) => { |
| return fetch("../resources/bad-chunk-encoding.py?count=1").then((response) => { |
| return checkReader(test, response.body.getReader(), reader => reader.closed); |
| }); |
| }, "Response reader closed promise should reject after a network error happening after resolving fetch promise"); |
| </script> |
| </body> |
| </html> |
| |