| <html> |
| <head> |
| <script src="../http/tests/inspector/inspector-test.js"></script> |
| <script type="text/javascript"> |
| function test() |
| { |
| var requestsSent = 0; |
| var responsesReceived = 0; |
| |
| function finishWhenDone(agentName, action, errorString) |
| { |
| if (action === "enable") |
| InspectorTest.addResult(""); |
| if (errorString) |
| InspectorTest.addResult(agentName + "." + action + " finished with error " + errorString); |
| else |
| InspectorTest.addResult(agentName + "." + action + " finished successfully"); |
| |
| ++responsesReceived; |
| if (responsesReceived === requestsSent) |
| InspectorTest.completeTest(); |
| } |
| |
| var targets = SDK.targetManager.targets(); |
| for (var target of targets) { |
| var agentNames = Object.keys(target._agents).filter(function(agentName) { |
| var agent = target._agents[agentName]; |
| return agent["enable"] && agent["disable"] && agentName !== "ServiceWorker" && agentName !== "Security" && agentName !== "Inspector" && agentName !== "Target"; // async wrt others. |
| }).sort(); |
| |
| async function disableAgent(agentName) |
| { |
| ++requestsSent; |
| var agent = target._agents[agentName]; |
| var response = await agent.invoke_disable({}); |
| finishWhenDone(agentName, "disable", response[Protocol.Error]); |
| } |
| |
| async function enableAgent(agentName) |
| { |
| ++requestsSent; |
| var agent = target._agents[agentName]; |
| var response = await agent.invoke_enable({}); |
| finishWhenDone(agentName, "enable", response[Protocol.Error]); |
| } |
| |
| agentNames.forEach(disableAgent); |
| |
| agentNames.forEach(agentName => { |
| enableAgent(agentName); |
| disableAgent(agentName); |
| }); |
| } |
| } |
| |
| </script> |
| </head> |
| <body onload="runTest()"> |
| <p>Test that each agent could be enabled/disabled separately.</p> |
| </body> |
| </html> |