blob: f6a9e1d4b2359e33d3a25ca0821aa7d0deb5f24f [file] [log] [blame]
(async function(testRunner) {
var {page, session, dp} = await testRunner.startBlank(`Tests request body blobs support.`);
async function reportRequest(label) {
var { params : { request, requestId } } = await dp.Network.onceRequestWillBeSent();
testRunner.log(`[${label}] Data included: ${request.postData !== undefined}, has post data: ${request.hasPostData}`);
var { result } = await dp.Network.getRequestPostData({ requestId });
testRunner.log(`[${label}] ${result.postData}`);
}
async function SendBlobRequest() {
var promise = reportRequest('blob');
await session.evaluateAsync(`
(function() {
return fetch('/', { method: "POST", body: new Blob(['string1', 'string2']) });
})();
`);
await promise;
}
async function SendClonedRequests() {
var promise = Promise.all([reportRequest('orginal'), reportRequest('clone')]);
await session.evaluateAsync(`
(function() {
var r1 = new Request('/', { method: 'POST', body: '< Cloned request body >' });
var r2 = r1.clone();
return Promise.all(fetch(r1), fetch(r2));
})();
`);
await promise;
}
await dp.Network.enable({ maxPostDataSize: 512 });
await SendBlobRequest();
await SendClonedRequests();
testRunner.completeTest();
})