Index: third_party/WebKit/LayoutTests/http/tests/inspector-protocol/websocket/websocket-user-agent-override.html |
diff --git a/third_party/WebKit/LayoutTests/http/tests/inspector-protocol/websocket/websocket-user-agent-override.html b/third_party/WebKit/LayoutTests/http/tests/inspector-protocol/websocket/websocket-user-agent-override.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..879b5034d4c380fcd16728bca1a2d1b71e213639 |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/http/tests/inspector-protocol/websocket/websocket-user-agent-override.html |
@@ -0,0 +1,50 @@ |
+<!DOCTYPE html> |
+<html> |
+<head> |
+<script src="../inspector-protocol-test.js"></script> |
+<script> |
+var ws; |
+function openWebSocket(url) { |
+ ws = new WebSocket(url); |
+} |
+ |
+function test() { |
+ var url = "ws://localhost:8880/echo"; |
+ var userAgentString = "Mozilla/5.0 (Overridden User Agent)"; |
+ |
+ InspectorTest.log("Test started"); |
+ InspectorTest.eventHandler["Network.webSocketWillSendHandshakeRequest"] = onWillSendRequest |
+ enableNetwork(); |
+ |
+ function enableNetwork() |
+ { |
+ InspectorTest.log("Enabling network"); |
+ InspectorTest.sendCommandOrDie("Network.enable", {}, didEnableNetwork); |
+ } |
+ |
+ function didEnableNetwork() |
+ { |
+ InspectorTest.log("Network enabled"); |
+ InspectorTest.log("Setting User Agent Override to: " + userAgentString); |
+ InspectorTest.sendCommandOrDie("Network.setUserAgentOverride", { "userAgent": userAgentString }, didSetUserAgent); |
+ } |
+ |
+ function didSetUserAgent() |
+ { |
+ InspectorTest.log("User Agent Set"); |
+ InspectorTest.log("Sending command to open websocket"); |
+ InspectorTest.sendCommandOrDie("Runtime.evaluate", { "expression": 'openWebSocket("' + url + '")'}); |
+ } |
+ |
+ function onWillSendRequest(request) |
+ { |
+ InspectorTest.log("User agent is: " + request.params.request.headers["User-Agent"]); |
+ InspectorTest.completeTest(); |
+ } |
+} |
+</script> |
+</head> |
+<body onload="runTest();"> |
+<p>Tests that WebSocket headers are set properly from overriden User Agent.</p> |
+</body> |
+</html> |