blob: ead5588141793d8b9cc3a83658fa2eae4f76baf3 [file] [log] [blame]
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Consuming Response body after getting a ReadableStream</title>
<meta name="help" href="https://fetch.spec.whatwg.org/#response">
<meta name="help" href="https://fetch.spec.whatwg.org/#body-mixin">
<meta name="author" title="Canon Research France" href="https://www.crf.canon.fr">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
</head>
<body>
<script>
function createResponseWithLockedReadableStream(callback) {
return fetch("../resources/data.json").then(function(response) {
var reader = response.body.getReader();
return callback(response);
});
}
promise_test(function(test) {
return createResponseWithLockedReadableStream(function(response) {
if ('blob' in response) {
return promise_rejects(test, new TypeError(), response.blob());
}
});
}, "Getting blob after getting a locked Response body");
promise_test(function(test) {
return createResponseWithLockedReadableStream(function(response) {
return promise_rejects(test, new TypeError(), response.text());
});
}, "Getting text after getting a locked Response body");
promise_test(function(test) {
return createResponseWithLockedReadableStream(function(response) {
return promise_rejects(test, new TypeError(), response.json());
});
}, "Getting json after getting a locked Response body");
promise_test(function(test) {
return createResponseWithLockedReadableStream(function(response) {
return promise_rejects(test, new TypeError(), response.arrayBuffer());
});
}, "Getting arrayBuffer after getting a locked Response body");
</script>
</body>
</html>