Jorijn van der Graaf
bdca27b871
test(quic): receive by callback, one callback at a time, ended once
...
ShouldRecieveByCallbackQUIC, seventeen checks. Bytes and a FIN that came
before OnRecieve are delivered by it before it returns. Registered while
1000 KiB keep arriving, with the first callbacks slowed to widen the
window and an echo sent from inside onData, every byte arrives in order
and no two of the stream's callbacks, onSent included, overlap; the
echo comes back whole. With every pool worker parked, 256 KiB goes out
and comes back by callback and SendAsync alone. The peer's Abort() and
a lost connection each end the stream not clean, once. Abort() from
inside onData caps a 1 MiB upload: no onData after it, onEnd(false),
and the peer's receive side ends while its next send is refused. A
wrapper destroyed inside its own onEnd, or moved while bytes flow,
breaks nothing; one destroyed on another thread mid-flow has no
callback run once its destructor returned. A second OnRecieve throws,
and a stream that cannot receive, or none, gets onEnd(false) at once.
With the serialisation disabled the overlap and order checks fail every
run; with Unregister's wait removed the destroyed-wrapper check fails
in most.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 02:32:48 +01:00
..
ShouldBindLoopbackEphemeral
feat(tcp): socket errors as std::system_error, with the phase that failed
2026-10-31 20:33:37 +01:00
ShouldBindLoopbackQUIC
test(listener): cover ListenerQUIC's bind address
2026-11-01 01:48:30 +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): socket errors as std::system_error, with the phase that failed
2026-10-31 20:33:37 +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): ClientHTTP1::Fetch follows redirects by the RFC, on a URL type
2026-10-31 20:39:43 +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
ShouldNotifyClosedConnectionQUIC
test(quic): a server deletes every connection from its OnClosed
2026-11-01 02:18:50 +01:00
ShouldParseHTTP1
feat(http1): add an HTTP/1.1 client and listener
2026-07-27 00:45:09 +00:00
ShouldParseURLs
feat(http1): ClientHTTP1::Fetch follows redirects by the RFC, on a URL type
2026-10-31 20:39:43 +01:00
ShouldRecieveByCallbackQUIC
test(quic): receive by callback, one callback at a time, ended once
2026-11-01 02:32:48 +01: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): socket errors as std::system_error, with the phase that failed
2026-10-31 20:33:37 +01:00
ShouldReportIoErrors
feat(tcp): socket errors as std::system_error, with the phase that failed
2026-10-31 20:33:37 +01:00
ShouldReportListenerPortQUIC
test(listener): cover ListenerQUIC::Port()
2026-11-01 01:45:31 +01:00
ShouldRequireClientCertificateHTTPS1
test(https): give the TLS tests ports of their own
2026-07-28 20:34:23 +00:00
ShouldReturnFromSendSyncQUIC
test(quic): SendSync returns for a send the peer answered at once
2026-11-01 02:16:18 +01: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
ShouldSendWithoutBlockingQUIC
test(quic): let the parked pool tasks leave before their flags go
2026-11-01 02:32:12 +01:00
ShouldShareSelfSignedCertificateQUIC
test(listener): six processes share one selfSigned certificate from cold
2026-11-01 01:56:44 +01: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
ShouldTellPeerOfCloseQUIC
test(quic): cover the peer being told that a ClientQUIC closed
2026-11-01 02:06:39 +01:00
ShouldTimeoutSilentHTTP1
feat(http1): bound the connect, and FetchHTTP1 for a URL with redirects
2026-10-31 20:28:32 +01:00