If the web server doesn't support WebSockets (returns TryWebSockets:false in the negotiate response), and the connection is started explicitly stating only WebSockets as the transport, the client will continue to try and start the connection with other transports.
I discovered this because my home desktop had sort sore of IIS Express misconfiguration which resulting in WebSockets not working in ASP.NET (despite it being Windows 8) and it caused some of the JS unit tests to fail strangely.
#2294 JS client attempts to fallback to other transports if WebSocket…
…s is exclusively specified even if server doesn't support WebSockets
#2294 JS client forces websockets and must not fallback to other tran…
automated new tests on FallbackConnectionFacts.js verify the fix