Crafter.Network/tests
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jorijn van der Graaf 16da0a1979
feat(tcp): a failed send or receive says which errno it failed with
Send() and the receives threw a bare std::runtime_error with the
strerror text, so a caller that reports the cause the way Python does -
"the connection broke ([Errno 104] Connection reset by peer)", which a
language model reads in Crafter.Review's SQL helper output - could not
tell the code. They throw SocketErrorException now, as a failed connect
already does: kind System, the errno, and the same message, still a
std::runtime_error. A receive timeout stays SocketTimeoutException and
a closed peer SocketClosedException.

ShouldReportIoErrors: a peer that resets the connection (SO_LINGER 0)
fails the next receive with ECONNRESET and a send into it with EPIPE
or ECONNRESET.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 20:28:32 +01:00
..
ShouldBindLoopbackEphemeral feat(tcp): ListenerTCP binds the address it is given, at port 0 if asked 2026-10-31 20:28:32 +01:00
ShouldBuildWithoutQUIC feat: TCP-only builds; TCP options and timeouts; receives that report and keep what arrived 2026-10-20 20:04:57 +02:00
ShouldConfigureTCP feat: TCP-only builds; TCP options and timeouts; receives that report and keep what arrived 2026-10-20 20:04:57 +02:00
ShouldConnectDualStack feat(tcp): connect over IPv4 and IPv6, and say why a connect failed 2026-10-31 20:28:32 +01:00
ShouldEchoWebTransport SPDX license 2026-07-22 17:55:45 +02:00
ShouldFallbackUnknownRoutes test(http): replay one fallback route table over both listeners 2026-07-28 19:42:16 +00:00
ShouldFollowRedirectsHTTP1 feat(http1): bound the connect, and FetchHTTP1 for a URL with redirects 2026-10-31 20:28:32 +01:00
ShouldHonourQUICSettings quic settings 2026-08-25 19:17:22 +02:00
ShouldInteropCurlHTTP1 feat(http1): add an HTTP/1.1 client and listener 2026-07-27 00:45:09 +00:00
ShouldInteropCurlHTTPS1 test(https): give the TLS tests ports of their own 2026-07-28 20:34:23 +00:00
ShouldNotDropEarlyStreams SPDX license 2026-07-22 17:55:45 +02:00
ShouldParseHTTP1 feat(http1): add an HTTP/1.1 client and listener 2026-07-27 00:45:09 +00:00
ShouldRecieveTCP feat: TCP-only builds; TCP options and timeouts; receives that report and keep what arrived 2026-10-20 20:04:57 +02:00
ShouldReportClosedQUICStream feat: TCP-only builds; TCP options and timeouts; receives that report and keep what arrived 2026-10-20 20:04:57 +02:00
ShouldReportConnectErrors feat(tcp): connect over IPv4 and IPv6, and say why a connect failed 2026-10-31 20:28:32 +01:00
ShouldReportIoErrors feat(tcp): a failed send or receive says which errno it failed with 2026-10-31 20:28:32 +01:00
ShouldRequireClientCertificateHTTPS1 test(https): give the TLS tests ports of their own 2026-07-28 20:34:23 +00:00
ShouldSend SPDX license 2026-07-22 17:55:45 +02:00
ShouldSendRecieveHTTP SPDX license 2026-07-22 17:55:45 +02:00
ShouldSendRecieveHTTP1 docs(http1): document the HTTP/1.1 stack, and expose the client's timeout 2026-07-27 01:02:37 +00:00
ShouldSendRecieveHTTPS1 test(https): give the TLS tests ports of their own 2026-07-28 20:34:23 +00:00
ShouldSendRecieveKeepaliveHTTP SPDX license 2026-07-22 17:55:45 +02:00
ShouldSendRecieveKeepaliveHTTP1 feat(http1): add an HTTP/1.1 client and listener 2026-07-27 00:45:09 +00:00
ShouldSendRecieveLargeHTTP SPDX license 2026-07-22 17:55:45 +02:00
ShouldSendRecieveLargeHTTP1 feat(http1): add an HTTP/1.1 client and listener 2026-07-27 00:45:09 +00:00
ShouldSendRecieveQUICDatagram SPDX license 2026-07-22 17:55:45 +02:00
ShouldSendRecieveQUICStream SPDX license 2026-07-22 17:55:45 +02:00
ShouldSurviveAbuseHTTP1 fix(http1): close a finished connection instead of holding it until reap 2026-07-27 00:56:53 +00:00
ShouldSurviveConnectionChurn fix(quic): close stream handles whose async StreamStart lost the teardown race 2026-08-25 23:18:01 +00:00
ShouldTimeoutSilentHTTP1 feat(http1): bound the connect, and FetchHTTP1 for a URL with redirects 2026-10-31 20:28:32 +01:00