Pass (2011-09-22T21:49:04Z - 1005 ms)
Description
A fragmented text message is sent in multiple frames. After
sending the first 2 frames of the text message, a Ping is sent. Then we wait 1s,
then we send 2 more text fragments, another Ping and then the final text fragment.
Everything is legal.
Expectation
The peer immediately answers the first Ping before
it has received the last text message fragment. The peer pong's back the Ping's
payload exactly, and echo's the payload of the fragmented message back to us.
Actual events match at least one expected.
Expected = {'OK': [('pong', 'pongme 1!'), ('pong', 'pongme 2!'), ('message', 'fragment1fragment2fragment3fragment4fragment5', False)]}
Actual = [('pong', 'pongme 1!'), ('pong', 'pongme 2!'), ('message', 'fragment1fragment2fragment3fragment4fragment5', False)]
OK: Connection was properly closed
Chop Size | Count | Octets |
4 | 1 | 4 |
11 | 1 | 11 |
58 | 1 | 58 |
129 | 1 | 129 |
Total | 4 | 202 |
Chop Size | Count | Octets |
8 | 1 | 8 |
15 | 7 | 105 |
195 | 1 | 195 |
Total | 9 | 308 |
Opcode | Count |
1 | 1 |
8 | 1 |
10 | 2 |
Total | 4 |
Opcode | Count |
0 | 4 |
1 | 1 |
8 | 1 |
9 | 2 |
Total | 8 |
Key | Value |
isServer | 0 |
closedByMe | 1 |
failedByMe | 0 |
droppedByMe | 0 |
wasClean | 1 |
localCloseCode | 1000 |
remoteCloseCode | 1000 |
remoteCloseReason | None |
000 TX OCTETS: 474554202f20485454502f312e310d0a557365722d4167656e743a204175746f6261686e576562536f636b65747354657374
53756974652f302e342e320d0a486f73743a206c6f63616c686f73740d0a557067726164653a20776562736f636b65740d0a
436f6e6e656374696f6e3a20557067726164650d0a5365632d576562536f636b65742d4b65793a202b5a47477770522b6f65
3754636e776441374b5047513d3d0d0a5365632d576562536f636b65742d56657273696f6e3a2031330d0a0d0a
001 RX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a557067726164653a20776562736f636b
65740d0a436f6e6e656374696f6e3a20557067726164650d0a5365632d576562536f636b65742d4163636570743a204a5149
3652564e74326c746c3858784b5432746239764f713274453d0d0a0d0a
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, MASK=5c57e7b9, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
fragment1
003 TX OCTETS: 01895c57e7b93a2586de313289cd6d
004 TX FRAME : OPCODE=0, FIN=False, RSV=0, MASK=af1740e5, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
fragment2
005 TX OCTETS: 0089af1740e5c9652182c2722e919d
006 TX FRAME : OPCODE=9, FIN=True, RSV=0, MASK=e021955a, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
pongme 1!
007 TX OCTETS: 8989e021955a904efb3d8d44b56bc1
008 DELAY 1.000000 sec
009 RX OCTETS: 8a09706f6e676d65203121
010 RX FRAME : OPCODE=10, FIN=True, RSV=0, MASKED=False, MASK=None
pongme 1!
011 TX FRAME : OPCODE=0, FIN=False, RSV=0, MASK=4fe28b87, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
fragment3
012 TX OCTETS: 00894fe28b872990eae02287e5f37c
013 TX FRAME : OPCODE=0, FIN=False, RSV=0, MASK=3556eb5d, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
fragment4
014 TX OCTETS: 00893556eb5d53248a3a5833852901
015 TX FRAME : OPCODE=9, FIN=True, RSV=0, MASK=41a61920, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
pongme 2!
016 TX OCTETS: 898941a6192031c977472cc3391260
017 TX FRAME : OPCODE=0, FIN=True, RSV=0, MASK=930aa87e, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
fragment5
018 TX OCTETS: 8089930aa87ef578c919fe6fc60aa6
019 TIME OUT 1.000000 sec
020 RX OCTETS: 8a09706f6e676d65203221812d667261676d656e7431667261676d656e7432667261676d656e7433667261676d656e743466
7261676d656e7435
021 RX FRAME : OPCODE=10, FIN=True, RSV=0, MASKED=False, MASK=None
pongme 2!
022 RX FRAME : OPCODE=1, FIN=True, RSV=0, MASKED=False, MASK=None
fragment1fragment2fragment3fragment4fragment5
023 TX FRAME : OPCODE=8, FIN=True, RSV=0, MASK=0713d782, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
è
024 TX OCTETS: 88820713d78204fb
025 RX OCTETS: 880203e8
026 RX FRAME : OPCODE=8, FIN=True, RSV=0, MASKED=False, MASK=None
è
027 TCP CLOSED BY PEER