78 lines
2.5 KiB
HTML
78 lines
2.5 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<script src="../../http/tests/inspector/resources/protocol-test.js"></script>
|
|
<script>
|
|
function loadSubresource(query) {
|
|
fetch(`resources/data.json?error=${query}`)
|
|
.catch(() => {});
|
|
}
|
|
|
|
function test()
|
|
{
|
|
let suite = ProtocolTest.createAsyncSuite("Network.interceptRequestWithError");
|
|
|
|
InspectorProtocol.sendCommand("Network.enable");
|
|
InspectorProtocol.sendCommand("Network.setInterceptionEnabled", {enabled: true});
|
|
InspectorProtocol.sendCommand("Network.addInterception", {
|
|
url: "resources/data\.json",
|
|
stage: /* Network.NetworkStage */ "request",
|
|
isRegex: true,
|
|
});
|
|
|
|
function addTestCase({name, errorType}) {
|
|
suite.addTestCase({
|
|
name,
|
|
async test() {
|
|
ProtocolTest.log("Triggering load...");
|
|
let [requestInterceptedEvent] = await Promise.all([
|
|
InspectorProtocol.awaitEvent({event: "Network.requestIntercepted"}),
|
|
ProtocolTest.evaluateInPage(`loadSubresource("${errorType}")`),
|
|
]);
|
|
|
|
ProtocolTest.log("Intercepting with error...");
|
|
let [loadingDidFailEvent] = await Promise.all([
|
|
InspectorProtocol.awaitEvent({event: "Network.loadingFailed"}),
|
|
InspectorProtocol.awaitCommand({
|
|
method: "Network.interceptRequestWithError",
|
|
params: {
|
|
requestId: requestInterceptedEvent.params.requestId,
|
|
errorType,
|
|
},
|
|
}),
|
|
]);
|
|
ProtocolTest.log("FAILURE TEXT: " + loadingDidFailEvent.params.errorText);
|
|
},
|
|
});
|
|
}
|
|
|
|
addTestCase({
|
|
name: "Network.interceptRequestWithError.General",
|
|
errorType: /* Network.ResourceErrorType */ "General",
|
|
});
|
|
|
|
addTestCase({
|
|
name: "Network.interceptRequestWithError.Access",
|
|
errorType: /* Network.ResourceErrorType */ "AccessControl",
|
|
});
|
|
|
|
addTestCase({
|
|
name: "Network.interceptRequestWithError.Canceled",
|
|
errorType: /* Network.ResourceErrorType */ "Cancellation",
|
|
});
|
|
|
|
addTestCase({
|
|
name: "Network.interceptRequestWithError.Timeout",
|
|
errorType: /* Network.ResourceErrorType */ "Timeout",
|
|
});
|
|
|
|
suite.runTestCasesAndFinish();
|
|
}
|
|
</script>
|
|
</head>
|
|
<body onload="runTest()">
|
|
<p>Tests for Network.interceptRequestWithError.</p>
|
|
</body>
|
|
</html>
|