websock-client - Case 2.10 : Pass - 44 ms @ 2025-11-26T12:36:05.273Z
Case Description
Send 10 Pings with payload.
Case Expectation
Pongs for our Pings with all the payloads. Note: This is not required by the Spec .. but we check for this behaviour anyway. Clean close with normal code.
Case Outcome
Actual events match at least one expected.
Expected:
{'OK': [('pong', u'payload-0'), ('pong', u'payload-1'), ('pong', u'payload-2'), ('pong', u'payload-3'), ('pong', u'payload-4'), ('pong', u'payload-5'), ('pong', u'payload-6'), ('pong', u'payload-7'), ('pong', u'payload-8'), ('pong', u'payload-9')]}
Observed:
[('pong', u'payload-0'), ('pong', u'payload-1'), ('pong', u'payload-2'), ('pong', u'payload-3'), ('pong', u'payload-4'), ('pong', u'payload-5'), ('pong', u'payload-6'), ('pong', u'payload-7'), ('pong', u'payload-8'), ('pong', u'payload-9')]
Case Closing Behavior
The spec requires the connection to be failed cleanly here (UNCLEAN)
GET /runCase?case=26&agent=websock-client HTTP/1.1 Connection: Upgrade Upgrade: websocket Host: 127.0.0.1:9001 Sec-Websocket-Extensions: permessage-deflate; client_max_window_bits=15 Cache-Control: no-cache Sec-Websocket-Version: 13 Sec-Websocket-Key: uY/ttDD5xF2AAHuWyjv6TQ==
HTTP/1.1 101 Switching Protocols Server: AutobahnTestSuite/25.10.1-0.10.9 X-Powered-By: AutobahnPython/0.10.9 Upgrade: WebSocket Connection: Upgrade Sec-WebSocket-Accept: 194RAvdWrQuYIpy6jBM26PI0EkY=
| Key | Value | Description |
| isServer | True | True, iff I (the fuzzer) am a server, and the peer is a client. |
| closedByMe | True | True, iff I have initiated closing handshake (that is, did send close first). |
| failedByMe | False | True, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP. |
| droppedByMe | False | True, iff I dropped the TCP connection. |
| wasClean | False | True, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility). |
| wasNotCleanReason | peer dropped the TCP connection without previous WebSocket closing handshake | When wasClean == False, the reason what happened. |
| wasServerConnectionDropTimeout | False | When we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True. |
| wasOpenHandshakeTimeout | False | When performing the opening handshake, but the peer did not finish in time, this gets True. |
| wasCloseHandshakeTimeout | False | When we initiated a closing handshake, but the peer did not respond in time, this gets True. |
| localCloseCode | 1000 | The close code I sent in close frame (if any). |
| localCloseReason | None | The close reason I sent in close frame (if any). |
| remoteCloseCode | None | The close code the peer sent me in close frame (if any). |
| remoteCloseReason | None | The close reason the peer sent me in close frame (if any). |
| Chop Size | Count | Octets |
| 15 | 1 | 15 |
| 135 | 1 | 135 |
| 287 | 1 | 287 |
| Total | 3 | 437 |
| Chop Size | Count | Octets |
| 4 | 1 | 4 |
| 11 | 10 | 110 |
| 208 | 1 | 208 |
| Total | 12 | 322 |
| Opcode | Count |
| 10 | 10 |
| Total | 10 |
| Opcode | Count |
| 8 | 1 |
| 9 | 10 |
| Total | 11 |
000 RX OCTETS: 474554202f72756e436173653f636173653d3236266167656e743d776562736f636b2d636c69656e7420485454502f312e31
0d0a436f6e6e656374696f6e3a20 ...
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
5465737453756974652f32352e31 ...
002 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
payload-0
003 TX OCTETS: 89097061796c6f61642d30
004 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
payload-1
005 TX OCTETS: 89097061796c6f61642d31
006 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
payload-2
007 TX OCTETS: 89097061796c6f61642d32
008 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
payload-3
009 TX OCTETS: 89097061796c6f61642d33
010 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
payload-4
011 TX OCTETS: 89097061796c6f61642d34
012 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
payload-5
013 TX OCTETS: 89097061796c6f61642d35
014 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
payload-6
015 TX OCTETS: 89097061796c6f61642d36
016 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
payload-7
017 TX OCTETS: 89097061796c6f61642d37
018 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
payload-8
019 TX OCTETS: 89097061796c6f61642d38
020 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
payload-9
021 TX OCTETS: 89097061796c6f61642d39
022 CLOSE CONNECTION AFTER 3.000000 sec
023 RX OCTETS: 8a892ebd4ad25edc33be41dc2eff1e
024 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3265626434616432
payload-0
025 RX OCTETS: 8a895f05bb282f64c2443064df056e8a894579497a351830162a182d57778a895e3cca422e5db32e315dae6f6d8a89081258
7d7873211167733c503c8a8964d8 ...
026 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3566303562623238
payload-1
027 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3435373934393761
payload-2
028 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3565336363613432
payload-3
029 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3038313235383764
payload-4
030 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3634643863633266
payload-5
031 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6535643339366166
payload-6
032 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6361363934316232
payload-7
033 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3632636436386536
payload-8
034 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6631653232323563
payload-9
035 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
0x03e8
036 TX OCTETS: 880203e8
037 TCP DROPPED BY PEER