| <!DOCTYPE html> |
| <html> |
| <head> |
| <meta charset="utf-8"> |
| <script src="../resources/inspector-test.js"></script> |
| <script> |
| function test() |
| { |
| let suite = InspectorTest.createAsyncSuite("Network.interceptRequestWithResponse"); |
| |
| suite.addTestCase({ |
| name: "Network.interceptRequest.MainResource with response", |
| description: "Main resource uses request interception on next page load and fulfills request", |
| async test() { |
| let localResourceOverride = WI.LocalResourceOverride.create("http://127.0.0.1:8000/inspector/network/intercept-request-main-resource-with-response.html", WI.LocalResourceOverride.InterceptType.ResponseSkippingNetwork, { |
| responseMIMEType: "text/html", |
| responseContent: `<!DOCTYPE html><html><head><script src="../resources/inspector-test.js"></`+`script></head><body><p>Overridden page content</p><script>alert("REPLACED HTML CONTENT"); TestPage.completeTest();</`+`script></body></html>`, |
| responseBase64Encoded: false, |
| responseStatus: 200, |
| responseStatusText: "OK", |
| responseHeaders: {}, |
| }); |
| WI.networkManager.addLocalResourceOverride(localResourceOverride); |
| |
| await InspectorTest.reloadPage({ignoreCache: false, revalidateAllResources: true}); |
| } |
| }); |
| |
| suite.runTestCasesAndFinish(); |
| } |
| </script> |
| </head> |
| <body onload="runTest()"> |
| <p>Test request interception intercepting the main resource load with response.</p> |
| <script>alert("ORIGINAL HTML CONTENT");</script> |
| </body> |
| </html> |