69 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
<testcase>
 | 
						|
<info>
 | 
						|
<keywords>
 | 
						|
WebSockets
 | 
						|
</keywords>
 | 
						|
</info>
 | 
						|
 | 
						|
#
 | 
						|
# Sends a PING + a 5 byte hello TEXT
 | 
						|
<reply>
 | 
						|
<data nocheck="yes" nonewline="yes">
 | 
						|
HTTP/1.1 101 Switching to WebSockets swsclose
 | 
						|
Server: test-server/fake
 | 
						|
Upgrade: websocket
 | 
						|
Connection: Upgrade
 | 
						|
Something: else
 | 
						|
Sec-WebSocket-Accept: HkPsVga7+8LuxM4RGQ5p9tZHeYs=
 | 
						|
 | 
						|
%hex[%89%00%81%05hello]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 curl_ws_recv() with closed connection
 | 
						|
</name>
 | 
						|
<tool>
 | 
						|
lib%TESTNUMBER
 | 
						|
</tool>
 | 
						|
<command>
 | 
						|
ws://%HOSTIP:%HTTPPORT/%TESTNUMBER
 | 
						|
</command>
 | 
						|
</client>
 | 
						|
 | 
						|
#
 | 
						|
# PONG with no data and the 32 bit mask
 | 
						|
#
 | 
						|
<verify>
 | 
						|
<protocol nocheck="yes" crlf="yes">
 | 
						|
GET /%TESTNUMBER HTTP/1.1
 | 
						|
Host: %HOSTIP:%HTTPPORT
 | 
						|
User-Agent: websocket/2304
 | 
						|
Accept: */*
 | 
						|
Upgrade: websocket
 | 
						|
Connection: Upgrade
 | 
						|
Sec-WebSocket-Version: 13
 | 
						|
Sec-WebSocket-Key: NDMyMTUzMjE2MzIxNzMyMQ==
 | 
						|
 | 
						|
</protocol>
 | 
						|
 | 
						|
# This test used to check that "connection closed" was output, but
 | 
						|
# that is flaky since the outgoing PING just before might fail already
 | 
						|
# and then the test exists before the output gets to be written
 | 
						|
</verify>
 | 
						|
</testcase>
 |