| <testcase> | |
| <info> | |
| <keywords> | |
| WebSockets | |
| </keywords> | |
| </info> | |
| # | |
| # Server-side | |
| <reply> | |
| <data nocheck="yes" nonewline="yes"> | |
| HTTP/1.1 101 Switching to WebSockets | |
| Server: test-server/fake | |
| Upgrade: websocket | |
| Connection: Upgrade | |
| Something: else | |
| Sec-WebSocket-Accept: HkPsVga7+8LuxM4RGQ5p9tZHeYs= | |
| %hex[%89%00]hex% | |
| </data> | |
| # allow upgrade | |
| <servercmd> | |
| upgrade | |
| </servercmd> | |
| </reply> | |
| # | |
| # Client-side | |
| <client> | |
| # require debug for the forced CURL_ENTROPY | |
| <features> | |
| Debug | |
| ws | |
| </features> | |
| <server> | |
| http | |
| </server> | |
| <name> | |
| WebSockets via callback (raw mode) + curl_ws_send() | |
| </name> | |
| <tool> | |
| lib%TESTNUMBER | |
| </tool> | |
| <command> | |
| ws://%HOSTIP:%HTTPPORT/%TESTNUMBER | |
| </command> | |
| </client> | |
| # | |
| # Verify data after the test has been "shot" | |
| <verify> | |
| <protocol nocheck="yes" nonewline="yes"> | |
| GET /%TESTNUMBER HTTP/1.1 | |
| Host: %HOSTIP:%HTTPPORT | |
| User-Agent: webbie-sox/3 | |
| Accept: */* | |
| Upgrade: websocket | |
| Connection: Upgrade | |
| Sec-WebSocket-Version: 13 | |
| Sec-WebSocket-Key: NDMyMTUzMjE2MzIxNzMyMQ== | |
| %hex[%8a%00]hex% | |
| </protocol> | |
| </verify> | |
| </testcase> |