Summary report generated on 2012-10-18T08:39:28Z (UTC) by Autobahn WebSockets Testsuite v0.5.2/v0.5.9.
Pass | Test case was executed and passed successfully. |
Non-Strict | Test case was executed and passed non-strictly. A non-strict behavior is one that does not adhere to a SHOULD-behavior as described in the protocol specification or a well-defined, canonical behavior that appears to be desirable but left open in the protocol specification. An implementation with non-strict behavior is still conformant to the protocol specification. |
Fail | Test case was executed and failed. An implementation which fails a test case - other than a performance/limits related one - is non-conforming to a MUST-behavior as described in the protocol specification. |
Info | Informational test case which detects certain implementation behavior left unspecified by the spec but nevertheless potentially interesting to implementors. |
Missing | Test case is missing, either because it was skipped via the test suite configuration or deactivated, i.e. because the implementation does not implement the tested feature or breaks during running the test case. |
1 Framing | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
1.1 Text Messages | ||||||||||||||
Case 1.1.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.1.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.1.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.1.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.1.5 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.1.6 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.1.7 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.1.8 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
1 Framing | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
1.2 Binary Messages | ||||||||||||||
Case 1.2.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.2.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.2.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.2.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.2.5 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.2.6 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.2.7 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 1.2.8 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
2 Pings/Pongs | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
Case 2.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 2.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 2.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 2.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 2.5 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 2.6 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 2.7 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 2.8 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 2.9 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 2.10 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Fail | None |
Case 2.11 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
3 Reserved Bits | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
Case 3.1 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 3.2 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Non-Strict | None | Non-Strict | None | Pass | None |
Case 3.3 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Non-Strict | None | Non-Strict | None | Pass | None |
Case 3.4 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 3.5 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 3.6 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 3.7 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
4 Opcodes | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
4.1 Non-control Opcodes | ||||||||||||||
Case 4.1.1 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 4.1.2 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 4.1.3 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Non-Strict | None | Non-Strict | None | Pass | None |
Case 4.1.4 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Non-Strict | None | Non-Strict | None | Pass | None |
Case 4.1.5 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
4 Opcodes | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
4.2 Control Opcodes | ||||||||||||||
Case 4.2.1 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 4.2.2 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 4.2.3 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Non-Strict | None | Non-Strict | None | Pass | None |
Case 4.2.4 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Non-Strict | None | Non-Strict | None | Pass | None |
Case 4.2.5 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
5 Fragmentation | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
Case 5.1 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 5.2 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 5.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 5.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 5.5 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 5.6 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 5.7 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 5.8 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 5.9 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 5.10 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 5.11 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 5.12 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 5.13 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 5.14 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 5.15 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Non-Strict | None | Non-Strict | None | Pass | None |
Case 5.16 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 5.17 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 5.18 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 5.19 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 5.20 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.1 Valid UTF-8 with zero payload fragments | ||||||||||||||
Case 6.1.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.1.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.1.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.2 Valid UTF-8 unfragmented, fragmented on code-points and within code-points | ||||||||||||||
Case 6.2.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.2.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.2.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.2.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.3 Invalid UTF-8 differently fragmented | ||||||||||||||
Case 6.3.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.3.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.4 Fail-fast on invalid UTF-8 | ||||||||||||||
Case 6.4.1 | Pass | 1007 | Pass | 1007 | Non-Strict | None | Non-Strict | None | Non-Strict | None | Non-Strict | None | Pass | None |
Case 6.4.2 | Pass | 1007 | Pass | 1007 | Non-Strict | None | Non-Strict | None | Non-Strict | None | Non-Strict | None | Non-Strict | None |
Case 6.4.3 | Pass | 1007 | Pass | 1007 | Non-Strict | None | Non-Strict | None | Non-Strict | None | Non-Strict | None | Pass | None |
Case 6.4.4 | Pass | 1007 | Pass | 1007 | Non-Strict | None | Non-Strict | None | Non-Strict | None | Non-Strict | None | Non-Strict | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.5 Some valid UTF-8 sequences | ||||||||||||||
Case 6.5.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.6 All prefixes of a valid UTF-8 string that contains multi-byte code points | ||||||||||||||
Case 6.6.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.6.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.6.3 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.6.4 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.6.5 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.6.6 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.6.7 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.6.8 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.6.9 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.6.10 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.6.11 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.7 First possible sequence of a certain length | ||||||||||||||
Case 6.7.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.7.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.7.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.7.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.8 First possible sequence length 5/6 (invalid codepoints) | ||||||||||||||
Case 6.8.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.8.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.9 Last possible sequence of a certain length | ||||||||||||||
Case 6.9.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.9.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.9.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.9.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.10 Last possible sequence length 4/5/6 (invalid codepoints) | ||||||||||||||
Case 6.10.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.10.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.10.3 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.11 Other boundary conditions | ||||||||||||||
Case 6.11.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.11.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.11.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.11.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.11.5 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.12 Unexpected continuation bytes | ||||||||||||||
Case 6.12.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.12.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.12.3 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.12.4 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.12.5 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.12.6 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.12.7 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.12.8 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.13 Lonely start characters | ||||||||||||||
Case 6.13.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.13.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.13.3 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.13.4 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.13.5 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.14 Sequences with last continuation byte missing | ||||||||||||||
Case 6.14.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.14.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.14.3 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.14.4 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.14.5 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.14.6 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.14.7 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.14.8 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.14.9 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.14.10 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.15 Concatenation of incomplete sequences | ||||||||||||||
Case 6.15.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.16 Impossible bytes | ||||||||||||||
Case 6.16.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.16.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.16.3 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.17 Examples of an overlong ASCII character | ||||||||||||||
Case 6.17.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.17.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.17.3 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.17.4 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.17.5 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.18 Maximum overlong sequences | ||||||||||||||
Case 6.18.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.18.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.18.3 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.18.4 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.18.5 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.19 Overlong representation of the NUL character | ||||||||||||||
Case 6.19.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.19.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.19.3 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.19.4 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.19.5 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.20 Single UTF-16 surrogates | ||||||||||||||
Case 6.20.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.20.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.20.3 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.20.4 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.20.5 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.20.6 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.20.7 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.21 Paired UTF-16 surrogates | ||||||||||||||
Case 6.21.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.21.2 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.21.3 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.21.4 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.21.5 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.21.6 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.21.7 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 6.21.8 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.22 Non-character code points (valid UTF-8) | ||||||||||||||
Case 6.22.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.5 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.6 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.7 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.8 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.9 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.10 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.11 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.12 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.13 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.14 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.15 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.16 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.17 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.18 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.19 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.20 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.21 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.22 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.23 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.24 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.25 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.26 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.27 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.28 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.29 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.30 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.31 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.32 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.33 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 6.22.34 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
6 UTF-8 Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
6.23 Unicode replacement character | ||||||||||||||
Case 6.23.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
7 Close Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
7.1 Basic close behavior (fuzzer initiated) | ||||||||||||||
Case 7.1.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 7.1.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 7.1.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 7.1.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 7.1.5 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 7.1.6 | Info | 1000 | Info | 1000 | Info | None | Info | None | Info | 1000 | Info | 1000 | Info | None |
7 Close Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
7.3 Close frame structure: payload length (fuzzer initiated) | ||||||||||||||
Case 7.3.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 7.3.2 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 7.3.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 7.3.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 7.3.5 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 7.3.6 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
7 Close Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
7.5 Close frame structure: payload value (fuzzer initiated) | ||||||||||||||
Case 7.5.1 | Pass | 1007 | Pass | 1007 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
7 Close Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
7.7 Close frame structure: valid close codes (fuzzer initiated) | ||||||||||||||
Case 7.7.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case 7.7.2 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1001 | Pass | 1001 | Pass | None |
Case 7.7.3 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1002 | Pass | 1002 | Pass | None |
Case 7.7.4 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1003 | Pass | 1003 | Pass | None |
Case 7.7.5 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1007 | Pass | 1007 | Pass | None |
Case 7.7.6 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1008 | Pass | 1008 | Pass | None |
Case 7.7.7 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1009 | Pass | 1009 | Pass | None |
Case 7.7.8 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1010 | Pass | 1010 | Pass | None |
Case 7.7.9 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1011 | Pass | 1011 | Pass | None |
Case 7.7.10 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 3000 | Pass | 3000 | Pass | None |
Case 7.7.11 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 3999 | Pass | 3999 | Pass | None |
Case 7.7.12 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 4000 | Pass | 4000 | Pass | None |
Case 7.7.13 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 4999 | Pass | 4999 | Pass | None |
7 Close Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
7.9 Close frame structure: invalid close codes (fuzzer initiated) | ||||||||||||||
Case 7.9.1 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 7.9.2 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Fail | 999 | Fail | 999 | Pass | None |
Case 7.9.3 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Fail | 1004 | Fail | 1004 | Pass | None |
Case 7.9.4 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 7.9.5 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 7.9.6 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Fail | 1012 | Fail | 1012 | Pass | None |
Case 7.9.7 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Fail | 1013 | Fail | 1013 | Pass | None |
Case 7.9.8 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Fail | 1014 | Fail | 1014 | Pass | None |
Case 7.9.9 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Pass | None | Pass | None | Pass | None |
Case 7.9.10 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Fail | 1016 | Fail | 1016 | Pass | None |
Case 7.9.11 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Fail | 1100 | Fail | 1100 | Pass | None |
Case 7.9.12 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Fail | 2000 | Fail | 2000 | Pass | None |
Case 7.9.13 | Pass | 1002 | Pass | 1002 | Pass | None | Pass | None | Fail | 2999 | Fail | 2999 | Pass | None |
7 Close Handling | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
7.13 Informational close information (fuzzer initiated) | ||||||||||||||
Case 7.13.1 | Info | 1002 | Info | 1002 | Info | None | Info | None | Info | 5000 | Info | 5000 | Info | None |
Case 7.13.2 | Info | 1002 | Info | 1002 | Info | None | Info | None | Info | 65535 | Info | 65535 | Info | None |
9 Limits/Performance | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
9.1 Text Message (increasing size) | ||||||||||||||
Case 9.1.1 | Pass 44 ms | 1000 | Pass 4 ms | 1000 | Pass 11 ms | None | Pass 21 ms | None | Pass 11 ms | 1000 | Pass 11 ms | 1000 | Pass 10 ms | None |
Case 9.1.2 | Pass 164 ms | 1000 | Pass 29 ms | 1000 | Pass 28 ms | None | Pass 26 ms | None | Pass 24 ms | 1000 | Pass 24 ms | 1000 | Pass 22 ms | None |
Case 9.1.3 | Pass 646 ms | 1000 | Pass 64 ms | 1000 | Pass 112 ms | None | Pass 78 ms | None | Pass 66 ms | 1000 | Pass 70 ms | 1000 | Pass 82 ms | None |
Case 9.1.4 | Pass 2611 ms | 1000 | Pass 231 ms | 1000 | Pass 1001 ms | None | Pass 274 ms | None | Pass 227 ms | 1000 | Pass 241 ms | 1000 | Pass 284 ms | None |
Case 9.1.5 | Pass 5198 ms | 1000 | Pass 484 ms | 1000 | Pass 3994 ms | None | Pass 602 ms | None | Pass 493 ms | 1000 | Pass 584 ms | 1000 | Pass 537 ms | None |
Case 9.1.6 | Pass 10423 ms | 1000 | Pass 999 ms | 1000 | Pass 15249 ms | None | Pass 1243 ms | None | Pass 1046 ms | 1000 | Pass 1090 ms | 1000 | Pass 949 ms | None |
9 Limits/Performance | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
9.2 Binary Message (increasing size) | ||||||||||||||
Case 9.2.1 | Pass 24 ms | 1000 | Pass 4 ms | 1000 | Pass 10 ms | None | Pass 9 ms | None | Pass 10 ms | 1000 | Pass 9 ms | 1000 | Pass 10 ms | None |
Case 9.2.2 | Pass 76 ms | 1000 | Pass 10 ms | 1000 | Pass 24 ms | None | Pass 21 ms | None | Pass 19 ms | 1000 | Pass 20 ms | 1000 | Pass 25 ms | None |
Case 9.2.3 | Pass 323 ms | 1000 | Pass 39 ms | 1000 | Pass 85 ms | None | Pass 53 ms | None | Pass 48 ms | 1000 | Pass 58 ms | 1000 | Pass 65 ms | None |
Case 9.2.4 | Pass 1176 ms | 1000 | Pass 170 ms | 1000 | Pass 848 ms | None | Pass 186 ms | None | Pass 156 ms | 1000 | Pass 183 ms | 1000 | Pass 210 ms | None |
Case 9.2.5 | Pass 2289 ms | 1000 | Pass 314 ms | 1000 | Pass 3507 ms | None | Pass 422 ms | None | Pass 371 ms | 1000 | Pass 403 ms | 1000 | Pass 434 ms | None |
Case 9.2.6 | Pass 4628 ms | 1000 | Pass 608 ms | 1000 | Pass 14881 ms | None | Pass 964 ms | None | Pass 839 ms | 1000 | Pass 896 ms | 1000 | Pass 794 ms | None |
9 Limits/Performance | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
9.3 Fragmented Text Message (fixed size, increasing fragment size) | ||||||||||||||
Case 9.3.1 | Pass 3882 ms | 1000 | Pass 1168 ms | 1000 | Pass 388 ms | None | Pass 310 ms | None | Pass 254 ms | 1000 | Pass 256 ms | 1000 | Pass 451 ms | None |
Case 9.3.2 | Pass 2976 ms | 1000 | Pass 435 ms | 1000 | Pass 354 ms | None | Pass 332 ms | None | Pass 259 ms | 1000 | Pass 277 ms | 1000 | Pass 284 ms | None |
Case 9.3.3 | Pass 2711 ms | 1000 | Pass 250 ms | 1000 | Pass 304 ms | None | Pass 293 ms | None | Pass 206 ms | 1000 | Pass 215 ms | 1000 | Pass 258 ms | None |
Case 9.3.4 | Pass 2583 ms | 1000 | Pass 322 ms | 1000 | Pass 290 ms | None | Pass 319 ms | None | Pass 262 ms | 1000 | Pass 269 ms | 1000 | Pass 208 ms | None |
Case 9.3.5 | Pass 2605 ms | 1000 | Pass 178 ms | 1000 | Pass 331 ms | None | Pass 278 ms | None | Pass 220 ms | 1000 | Pass 225 ms | 1000 | Pass 210 ms | None |
Case 9.3.6 | Pass 2595 ms | 1000 | Pass 189 ms | 1000 | Pass 289 ms | None | Pass 343 ms | None | Pass 274 ms | 1000 | Pass 260 ms | 1000 | Pass 215 ms | None |
Case 9.3.7 | Pass 2575 ms | 1000 | Pass 227 ms | 1000 | Pass 339 ms | None | Pass 283 ms | None | Pass 220 ms | 1000 | Pass 219 ms | 1000 | Pass 214 ms | None |
Case 9.3.8 | Pass 2652 ms | 1000 | Pass 175 ms | 1000 | Pass 405 ms | None | Pass 326 ms | None | Pass 244 ms | 1000 | Pass 274 ms | 1000 | Pass 210 ms | None |
Case 9.3.9 | Pass 2593 ms | 1000 | Pass 173 ms | 1000 | Pass 953 ms | None | Pass 283 ms | None | Pass 223 ms | 1000 | Pass 205 ms | 1000 | Pass 202 ms | None |
9 Limits/Performance | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
9.4 Fragmented Binary Message (fixed size, increasing fragment size) | ||||||||||||||
Case 9.4.1 | Pass 2627 ms | 1000 | Pass 997 ms | 1000 | Pass 230 ms | None | Pass 226 ms | None | Pass 194 ms | 1000 | Pass 191 ms | 1000 | Pass 361 ms | None |
Case 9.4.2 | Pass 1324 ms | 1000 | Pass 331 ms | 1000 | Pass 225 ms | None | Pass 246 ms | None | Pass 203 ms | 1000 | Pass 202 ms | 1000 | Pass 173 ms | None |
Case 9.4.3 | Pass 1071 ms | 1000 | Pass 173 ms | 1000 | Pass 193 ms | None | Pass 205 ms | None | Pass 147 ms | 1000 | Pass 153 ms | 1000 | Pass 168 ms | None |
Case 9.4.4 | Pass 1062 ms | 1000 | Pass 141 ms | 1000 | Pass 181 ms | None | Pass 191 ms | None | Pass 140 ms | 1000 | Pass 152 ms | 1000 | Pass 204 ms | None |
Case 9.4.5 | Pass 1063 ms | 1000 | Pass 109 ms | 1000 | Pass 229 ms | None | Pass 243 ms | None | Pass 167 ms | 1000 | Pass 150 ms | 1000 | Pass 159 ms | None |
Case 9.4.6 | Pass 1122 ms | 1000 | Pass 175 ms | 1000 | Pass 187 ms | None | Pass 188 ms | None | Pass 180 ms | 1000 | Pass 190 ms | 1000 | Pass 163 ms | None |
Case 9.4.7 | Pass 1045 ms | 1000 | Pass 102 ms | 1000 | Pass 185 ms | None | Pass 205 ms | None | Pass 174 ms | 1000 | Pass 145 ms | 1000 | Pass 191 ms | None |
Case 9.4.8 | Pass 1088 ms | 1000 | Pass 99 ms | 1000 | Pass 307 ms | None | Pass 186 ms | None | Pass 158 ms | 1000 | Pass 145 ms | 1000 | Pass 193 ms | None |
Case 9.4.9 | Pass 1100 ms | 1000 | Pass 98 ms | 1000 | Pass 817 ms | None | Pass 231 ms | None | Pass 160 ms | 1000 | Pass 145 ms | 1000 | Pass 157 ms | None |
9 Limits/Performance | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
9.5 Text Message (fixed size, increasing chop size) | ||||||||||||||
Case 9.5.1 | Pass 1627 ms | 1000 | Pass 610 ms | 1000 | Pass 2378 ms | None | Pass 1557 ms | None | Pass 1503 ms | 1000 | Pass 1423 ms | 1000 | Pass 1875 ms | None |
Case 9.5.2 | Pass 944 ms | 1000 | Pass 326 ms | 1000 | Pass 1280 ms | None | Pass 748 ms | None | Pass 739 ms | 1000 | Pass 781 ms | 1000 | Pass 862 ms | None |
Case 9.5.3 | Pass 649 ms | 1000 | Pass 198 ms | 1000 | Pass 682 ms | None | Pass 401 ms | None | Pass 392 ms | 1000 | Pass 423 ms | 1000 | Pass 445 ms | None |
Case 9.5.4 | Pass 649 ms | 1000 | Pass 109 ms | 1000 | Pass 353 ms | None | Pass 225 ms | None | Pass 228 ms | 1000 | Pass 230 ms | 1000 | Pass 214 ms | None |
Case 9.5.5 | Pass 654 ms | 1000 | Pass 75 ms | 1000 | Pass 228 ms | None | Pass 146 ms | None | Pass 159 ms | 1000 | Pass 132 ms | 1000 | Pass 148 ms | None |
Case 9.5.6 | Pass 646 ms | 1000 | Pass 53 ms | 1000 | Pass 156 ms | None | Pass 82 ms | None | Pass 76 ms | 1000 | Pass 68 ms | 1000 | Pass 78 ms | None |
9 Limits/Performance | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
9.6 Binary Text Message (fixed size, increasing chop size) | ||||||||||||||
Case 9.6.1 | Pass 1654 ms | 1000 | Pass 611 ms | 1000 | Pass 2382 ms | None | Pass 1415 ms | None | Pass 1390 ms | 1000 | Pass 1481 ms | 1000 | Pass 1565 ms | None |
Case 9.6.2 | Pass 1007 ms | 1000 | Pass 337 ms | 1000 | Pass 1175 ms | None | Pass 708 ms | None | Pass 704 ms | 1000 | Pass 765 ms | 1000 | Pass 707 ms | None |
Case 9.6.3 | Pass 638 ms | 1000 | Pass 229 ms | 1000 | Pass 562 ms | None | Pass 379 ms | None | Pass 371 ms | 1000 | Pass 434 ms | 1000 | Pass 397 ms | None |
Case 9.6.4 | Pass 494 ms | 1000 | Pass 100 ms | 1000 | Pass 318 ms | None | Pass 219 ms | None | Pass 207 ms | 1000 | Pass 200 ms | 1000 | Pass 202 ms | None |
Case 9.6.5 | Pass 343 ms | 1000 | Pass 66 ms | 1000 | Pass 178 ms | None | Pass 121 ms | None | Pass 101 ms | 1000 | Pass 110 ms | 1000 | Pass 136 ms | None |
Case 9.6.6 | Pass 315 ms | 1000 | Pass 49 ms | 1000 | Pass 120 ms | None | Pass 55 ms | None | Pass 56 ms | 1000 | Pass 71 ms | 1000 | Pass 84 ms | None |
9 Limits/Performance | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
9.7 Text Message Roundtrip Time (fixed number, increasing size) | ||||||||||||||
Case 9.7.1 | Pass 805 ms | 1000 | Pass 401 ms | 1000 | Pass 813 ms | None | Pass 820 ms | None | Pass 786 ms | 1000 | Pass 611 ms | 1000 | Pass 877 ms | None |
Case 9.7.2 | Pass 814 ms | 1000 | Pass 342 ms | 1000 | Pass 794 ms | None | Pass 812 ms | None | Pass 803 ms | 1000 | Pass 620 ms | 1000 | Pass 925 ms | None |
Case 9.7.3 | Pass 804 ms | 1000 | Pass 211 ms | 1000 | Pass 798 ms | None | Pass 805 ms | None | Pass 804 ms | 1000 | Pass 617 ms | 1000 | Pass 822 ms | None |
Case 9.7.4 | Pass 837 ms | 1000 | Pass 295 ms | 1000 | Pass 829 ms | None | Pass 825 ms | None | Pass 804 ms | 1000 | Pass 761 ms | 1000 | Pass 937 ms | None |
Case 9.7.5 | Pass 1605 ms | 1000 | Pass 262 ms | 1000 | Pass 846 ms | None | Pass 1001 ms | None | Pass 820 ms | 1000 | Pass 806 ms | 1000 | Pass 842 ms | None |
Case 9.7.6 | Pass 3431 ms | 1000 | Pass 451 ms | 1000 | Pass 1088 ms | None | Pass 1037 ms | None | Pass 1020 ms | 1000 | Pass 1016 ms | 1000 | Pass 1116 ms | None |
9 Limits/Performance | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
9.8 Binary Message Roundtrip Time (fixed number, increasing size) | ||||||||||||||
Case 9.8.1 | Pass 804 ms | 1000 | Pass 321 ms | 1000 | Pass 856 ms | None | Pass 614 ms | None | Pass 815 ms | 1000 | Pass 791 ms | 1000 | Pass 956 ms | None |
Case 9.8.2 | Pass 805 ms | 1000 | Pass 303 ms | 1000 | Pass 827 ms | None | Pass 615 ms | None | Pass 806 ms | 1000 | Pass 807 ms | 1000 | Pass 958 ms | None |
Case 9.8.3 | Pass 803 ms | 1000 | Pass 201 ms | 1000 | Pass 811 ms | None | Pass 697 ms | None | Pass 805 ms | 1000 | Pass 804 ms | 1000 | Pass 814 ms | None |
Case 9.8.4 | Pass 803 ms | 1000 | Pass 283 ms | 1000 | Pass 873 ms | None | Pass 794 ms | None | Pass 813 ms | 1000 | Pass 805 ms | 1000 | Pass 906 ms | None |
Case 9.8.5 | Pass 1007 ms | 1000 | Pass 240 ms | 1000 | Pass 963 ms | None | Pass 806 ms | None | Pass 898 ms | 1000 | Pass 808 ms | 1000 | Pass 1008 ms | None |
Case 9.8.6 | Pass 1807 ms | 1000 | Pass 364 ms | 1000 | Pass 995 ms | None | Pass 1002 ms | None | Pass 882 ms | 1000 | Pass 1024 ms | 1000 | Pass 945 ms | None |
10 Misc | AutobahnClient/0.5.9 | AutobahnClient/0.5.9-PyPy-Local | Chrome/22.0.1229.94 | Chrome/24.0.1300.0 | Firefox/16.0-20100101 | Firefox/19.0-19.0 | MSIE 10.0.8400.0 | |||||||
10.1 Auto-Fragmentation | ||||||||||||||
Case 10.1.1 | Pass | 1000 | Pass | 1000 | Pass | None | Pass | None | Pass | 1000 | Pass | 1000 | Pass | None |
Case Description
Send text message with payload 0.
Case Expectation
Receive echo'ed text message (with empty payload). Clean close with normal code.
Case Description
Send text message message with payload of length 125.
Case Expectation
Receive echo'ed text message (with payload as sent). Clean close with normal code.
Case Description
Send text message message with payload of length 126.
Case Expectation
Receive echo'ed text message (with payload as sent). Clean close with normal code.
Case Description
Send text message message with payload of length 127.
Case Expectation
Receive echo'ed text message (with payload as sent). Clean close with normal code.
Case Description
Send text message message with payload of length 128.
Case Expectation
Receive echo'ed text message (with payload as sent). Clean close with normal code.
Case Description
Send text message message with payload of length 65535.
Case Expectation
Receive echo'ed text message (with payload as sent). Clean close with normal code.
Case Description
Send text message message with payload of length 65536.
Case Expectation
Receive echo'ed text message (with payload as sent). Clean close with normal code.
Case Description
Send text message message with payload of length 65536. Sent out data in chops of 997 octets.
Case Expectation
Receive echo'ed text message (with payload as sent). Clean close with normal code.
Case Description
Send binary message with payload 0.
Case Expectation
Receive echo'ed binary message (with empty payload). Clean close with normal code.
Case Description
Send binary message message with payload of length 125.
Case Expectation
Receive echo'ed binary message (with payload as sent). Clean close with normal code.
Case Description
Send binary message message with payload of length 126.
Case Expectation
Receive echo'ed binary message (with payload as sent). Clean close with normal code.
Case Description
Send binary message message with payload of length 127.
Case Expectation
Receive echo'ed binary message (with payload as sent). Clean close with normal code.
Case Description
Send binary message message with payload of length 128.
Case Expectation
Receive echo'ed binary message (with payload as sent). Clean close with normal code.
Case Description
Send binary message message with payload of length 65535.
Case Expectation
Receive echo'ed binary message (with payload as sent). Clean close with normal code.
Case Description
Send binary message message with payload of length 65536.
Case Expectation
Receive echo'ed binary message (with payload as sent). Clean close with normal code.
Case Description
Send binary message message with payload of length 65536. Sent out data in chops of 997 octets.
Case Expectation
Receive echo'ed binary message (with payload as sent). Clean close with normal code.
Case Description
Send ping without payload.
Case Expectation
Pong (with empty payload) is sent in reply to Ping. Clean close with normal code.
Case Description
Send ping with small text payload.
Case Expectation
Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.
Case Description
Send ping with small binary (non UTF-8) payload.
Case Expectation
Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.
Case Description
Send ping with binary payload of 125 octets.
Case Expectation
Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.
Case Description
Send ping with binary payload of 126 octets.
Case Expectation
Connection is failed immediately (1002/Protocol Error), since control frames are only allowed to have payload up to and including 125 octets..
Case Description
Send ping with binary payload of 125 octets, send in octet-wise chops.
Case Expectation
Pong with payload echo'ed is sent in reply to Ping. Implementations must be TCP clean. Clean close with normal code.
Case Description
Send unsolicited pong without payload. Verify nothing is received. Clean close with normal code.
Case Expectation
Nothing.
Case Description
Send unsolicited pong with payload. Verify nothing is received. Clean close with normal code.
Case Expectation
Nothing.
Case Description
Send unsolicited pong with payload. Send ping with payload. Verify pong for ping is received.
Case Expectation
Nothing in reply to own Pong, but Pong with payload echo'ed in reply to Ping. Clean close with normal code.
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 Description
Send 10 Pings with payload. Send out octets in octet-wise chops.
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 Description
Send small text message with RSV = 1.
Case Expectation
The connection is failed immediately (1002/protocol error), since RSV must be 0, when no extension defining RSV meaning has been negoiated.
Case Description
Send small text message, then send again with RSV = 2, then send Ping.
Case Expectation
Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negoiated. The Pong is not received.
Case Description
Send small text message, then send again with RSV = 3, then send Ping. Octets are sent in frame-wise chops. Octets are sent in octet-wise chops.
Case Expectation
Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negoiated. The Pong is not received.
Case Description
Send small text message, then send again with RSV = 4, then send Ping. Octets are sent in octet-wise chops.
Case Expectation
Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negoiated. The Pong is not received.
Case Description
Send small binary message with RSV = 5.
Case Expectation
The connection is failed immediately, since RSV must be 0.
Case Description
Send Ping with RSV = 6.
Case Expectation
The connection is failed immediately, since RSV must be 0.
Case Description
Send Close with RSV = 7.
Case Expectation
The connection is failed immediately, since RSV must be 0.
Case Description
Send frame with reserved non-control Opcode = 3.
Case Expectation
The connection is failed immediately.
Case Description
Send frame with reserved non-control Opcode = 4 and non-empty payload.
Case Expectation
The connection is failed immediately.
Case Description
Send small text message, then send frame with reserved non-control Opcode = 5, then send Ping.
Case Expectation
Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.
Case Description
Send small text message, then send frame with reserved non-control Opcode = 6 and non-empty payload, then send Ping.
Case Expectation
Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.
Case Description
Send small text message, then send frame with reserved non-control Opcode = 7 and non-empty payload, then send Ping.
Case Expectation
Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.
Case Description
Send frame with reserved control Opcode = 11.
Case Expectation
The connection is failed immediately.
Case Description
Send frame with reserved control Opcode = 12 and non-empty payload.
Case Expectation
The connection is failed immediately.
Case Description
Send small text message, then send frame with reserved control Opcode = 13, then send Ping.
Case Expectation
Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.
Case Description
Send small text message, then send frame with reserved control Opcode = 14 and non-empty payload, then send Ping.
Case Expectation
Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.
Case Description
Send small text message, then send frame with reserved control Opcode = 15 and non-empty payload, then send Ping.
Case Expectation
Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.
Case Description
Send Ping fragmented into 2 fragments.
Case Expectation
Connection is failed immediately, since control message MUST NOT be fragmented.
Case Description
Send Pong fragmented into 2 fragments.
Case Expectation
Connection is failed immediately, since control message MUST NOT be fragmented.
Case Description
Send text Message fragmented into 2 fragments.
Case Expectation
Message is processed and echo'ed back to us.
Case Description
Send text Message fragmented into 2 fragments, octets are sent in frame-wise chops.
Case Expectation
Message is processed and echo'ed back to us.
Case Description
Send text Message fragmented into 2 fragments, octets are sent in octet-wise chops.
Case Expectation
Message is processed and echo'ed back to us.
Case Description
Send text Message fragmented into 2 fragments, one ping with payload in-between.
Case Expectation
A pong is received, then the message is echo'ed back to us.
Case Description
Send text Message fragmented into 2 fragments, one ping with payload in-between. Octets are sent in frame-wise chops.
Case Expectation
A pong is received, then the message is echo'ed back to us.
Case Description
Send text Message fragmented into 2 fragments, one ping with payload in-between. Octets are sent in octet-wise chops.
Case Expectation
A pong is received, then the message is echo'ed back to us.
Case Description
Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in one chop.
Case Expectation
The connection is failed immediately, since there is no message to continue.
Case Description
Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in per-frame chops.
Case Expectation
The connection is failed immediately, since there is no message to continue.
Case Description
Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in octet-wise chops.
Case Expectation
The connection is failed immediately, since there is no message to continue.
Case Description
Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in one chop.
Case Expectation
The connection is failed immediately, since there is no message to continue.
Case Description
Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in per-frame chops.
Case Expectation
The connection is failed immediately, since there is no message to continue.
Case Description
Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in octet-wise chops.
Case Expectation
The connection is failed immediately, since there is no message to continue.
Case Description
Send text Message fragmented into 2 fragments, then Continuation Frame with FIN = false where there is nothing to continue, then unfragmented Text Message, all sent in one chop.
Case Expectation
The connection is failed immediately, since there is no message to continue.
Case Description
Repeated 2x: Continuation Frame with FIN = false (where there is nothing to continue), then text Message fragmented into 2 fragments.
Case Expectation
The connection is failed immediately, since there is no message to continue.
Case Description
Repeated 2x: Continuation Frame with FIN = true (where there is nothing to continue), then text Message fragmented into 2 fragments.
Case Expectation
The connection is failed immediately, since there is no message to continue.
Case Description
Send text Message fragmented into 2 fragments, with both frame opcodes set to text, sent in one chop.
Case Expectation
The connection is failed immediately, since all data frames after the initial data frame must have opcode 0.
Case 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.
Case 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.
Case Description
Same as Case 5.19, but send all frames with SYNC = True.
Note, this does not change the octets sent in any way, only how the stream
is chopped up on the wire.
Case Expectation
Same as Case 5.19. Implementations must be agnostic to how
octet stream is chopped up on wire (must be TCP clean).
Case Description
Send text message of length 0.
Case Expectation
A message is echo'ed back to us (with empty payload).
Case Description
Send fragmented text message, 3 fragments each of length 0.
Case Expectation
A message is echo'ed back to us (with empty payload).
Case Description
Send fragmented text message, 3 fragments, first and last of length 0, middle non-empty.
Case Expectation
A message is echo'ed back to us (with payload = payload of middle fragment).
Case Description
Send a valid UTF-8 text message in one fragment.
MESSAGE:
Hello-µ@ßöäüàá-UTF-8!!
48656c6c6f2dc2b540c39fc3b6c3a4c3bcc3a0c3a12d5554462d382121
Case Expectation
The message is echo'ed back to us.
Case Description
Send a valid UTF-8 text message in two fragments, fragmented on UTF-8 code point boundary.
MESSAGE FRAGMENT 1:
Hello-µ@ßöä
48656c6c6f2dc2b540c39fc3b6c3a4
MESSAGE FRAGMENT 2:
üàá-UTF-8!!
c3bcc3a0c3a12d5554462d382121
Case Expectation
The message is echo'ed back to us.
Case Description
Send a valid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.
MESSAGE:
Hello-µ@ßöäüàá-UTF-8!!
48656c6c6f2dc2b540c39fc3b6c3a4c3bcc3a0c3a12d5554462d382121
Case Expectation
The message is echo'ed back to us.
Case Description
Send a valid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.
MESSAGE:
κόσμε
cebae1bdb9cf83cebcceb5
Case Expectation
The message is echo'ed back to us.
Case Description
Send invalid UTF-8 text message unfragmented.
MESSAGE:
κόσμε���edited
cebae1bdb9cf83cebcceb5eda080656469746564
Case Expectation
The connection is failed immediately, since the payload is not valid UTF-8.
Case Description
Send invalid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.
MESSAGE:
κόσμε���edited
cebae1bdb9cf83cebcceb5eda080656469746564
Case Expectation
The connection is failed immediately, since the payload is not valid UTF-8.
Case Description
Send invalid UTF-8 text message in 3 fragments (frames).
First frame payload is valid, then wait, then 2nd frame which contains the payload making the sequence invalid, then wait, then 3rd frame with rest.
Note that PART1 and PART3 are valid UTF-8 in themselves, PART2 is a 0x11000 encoded as in the UTF-8 integer encoding scheme, but the codepoint is invalid (out of range).
MESSAGE PARTS:
PART1 = κόσμε (cebae1bdb9cf83cebcceb5)
PART2 = ���� (f4908080)
PART3 = edited (656469746564)
Case Expectation
The first frame is accepted, we expect to timeout on the first wait. The 2nd frame should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.
Case Description
Same as Case 6.4.1, but in 2nd frame, we send only up to and including the octet making the complete payload invalid.
MESSAGE PARTS:
PART1 = κόσμε� (cebae1bdb9cf83cebcceb5f4)
PART2 = � (90)
PART3 = ��edited (8080656469746564)
Case Expectation
The first frame is accepted, we expect to timeout on the first wait. The 2nd frame should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.
Case Description
Same as Case 6.4.1, but we send message not in 3 frames, but in 3 chops of the same message frame.
MESSAGE PARTS:
PART1 = κόσμε (cebae1bdb9cf83cebcceb5)
PART2 = ���� (f4908080)
PART3 = edited (656469746564)
Case Expectation
The first chop is accepted, we expect to timeout on the first wait. The 2nd chop should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.
Case Description
Same as Case 6.4.2, but we send message not in 3 frames, but in 3 chops of the same message frame.
MESSAGE PARTS:
PART1 = κόσμε� (cebae1bdb9cf83cebcceb5f4)
PART2 = � (90)
PART3 = ()
Case Expectation
The first chop is accepted, we expect to timeout on the first wait. The 2nd chop should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.
Case Description
Send a text message with payload which is valid UTF-8 in one fragment.
MESSAGE:
κόσμε
cebae1bdb9cf83cebcceb5
Case Expectation
The message is echo'ed back to us.
Case Description
Send a text message with payload which is not valid UTF-8 in one fragment.
MESSAGE:
�
ce
Case Expectation
The connection is failed immediately, since the payload is not valid UTF-8.
Case Description
Send a text message with payload which is valid UTF-8 in one fragment.
MESSAGE:
κ
ceba
Case Expectation
The message is echo'ed back to us.
Case Description
Send a text message with payload which is not valid UTF-8 in one fragment.
MESSAGE:
κ�
cebae1
Case Expectation
The connection is failed immediately, since the payload is not valid UTF-8.
Case Description
Send a text message with payload which is not valid UTF-8 in one fragment.
MESSAGE:
κ�
cebae1bd
Case Expectation
The connection is failed immediately, since the payload is not valid UTF-8.
Case Description
Send a text message with payload which is valid UTF-8 in one fragment.
MESSAGE:
κό
cebae1bdb9
Case Expectation
The message is echo'ed back to us.
Case Description
Send a text message with payload which is not valid UTF-8 in one fragment.
MESSAGE:
κό�
cebae1bdb9cf
Case Expectation
The connection is failed immediately, since the payload is not valid UTF-8.
Case Description
Send a text message with payload which is valid UTF-8 in one fragment.
MESSAGE:
κόσ
cebae1bdb9cf83
Case Expectation
The message is echo'ed back to us.
Case Description
Send a text message with payload which is not valid UTF-8 in one fragment.
MESSAGE:
κόσ�
cebae1bdb9cf83ce
Case Expectation
The connection is failed immediately, since the payload is not valid UTF-8.
Case Description
Send a text message with payload which is valid UTF-8 in one fragment.
MESSAGE:
κόσμ
cebae1bdb9cf83cebc
Case Expectation
The message is echo'ed back to us.
Case Description
Send a text message with payload which is not valid UTF-8 in one fragment.
MESSAGE:
κόσμ�
cebae1bdb9cf83cebcce
Case Expectation
The connection is failed immediately, since the payload is not valid UTF-8.
Case Description
Send a text message with payload which is valid UTF-8 in one fragment.
MESSAGE:
κόσμε
cebae1bdb9cf83cebcceb5
Case Expectation
The message is echo'ed back to us.
Case Description
Send a text message with payload which is valid UTF-8 in one fragment.
MESSAGE: