| <!DOCTYPE html> |
| <html> |
| <head> |
| <meta charset="utf-8"> |
| <script src="../resources/inspector-test.js"></script> |
| <script> |
| function createXHRResource() { |
| let request = new XMLHttpRequest(); |
| request.open("POST", "resources/", true); |
| request.send("utf8=👍"); |
| } |
| |
| function test() |
| { |
| let suite = InspectorTest.createAsyncSuite("XHRWithRequestDataEncoding"); |
| |
| suite.addTestCase({ |
| name: "XHRWithRequestDataIsEncodedCorrectly", |
| description: "XHR with request data is encoded correctly.", |
| test(resolve, reject) { |
| InspectorTest.evaluateInPage(`createXHRResource()`); |
| WI.Frame.singleFireEventListener(WI.Frame.Event.ResourceWasAdded, (event) => { |
| let resource = event.data.resource; |
| InspectorTest.expectThat(resource instanceof WI.Resource, "Resource should be created."); |
| InspectorTest.expectThat(resource.requestData === "utf8=👍", "Request data should have expected content."); |
| resource.awaitEvent(WI.Resource.Event.LoadingDidFinish) |
| .then((event) => { InspectorTest.pass("Resource load should finish.") }) |
| .then(resolve, reject); |
| resource.awaitEvent(WI.Resource.Event.LoadingDidFail) |
| .then(() => { InspectorTest.fail("Resource should not have failed to load.") }) |
| .then(reject, reject); |
| }); |
| } |
| }); |
| |
| suite.runTestCasesAndFinish(); |
| } |
| </script> |
| </head> |
| <body onload="runTest()"> |
| <p>Tests XHR network resource payload is shown with correct encoding.</p> |
| </body> |
| </html> |