test(transport): drive a listening session over loopback
ShouldServeOverQuic runs a Session that listens for real and reaches it with the client's own transport. It covers: - the discovery record, and its removal when the Session ends; - status, call, a mistyped command, get and set, and log --follow streaming as entries are logged and ending on time; - six clients at once, and eight streams at once on one connection; - a wrong token, a request that isn't JSON, and one over 1 MiB, each answered with an error; - ending the Session with a follower waiting, which is told "shutting down" and is not sent a backlog it asked none of; - a client finding the port dead in milliseconds. The shutdown reply went missing in 4 runs of 30 until Crafter.Network's ~ClientQUIC let stopped streams finish before closing; 50 of 50 pass since. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
f8024b7a43
commit
fbb5809aea
2 changed files with 265 additions and 0 deletions
|
|
@ -232,6 +232,7 @@ extern "C" Configuration CrafterBuildProject(std::span<const std::string_view> a
|
|||
for (const std::string_view test : coreTests) cfg.AddTest(test).Dependencies({ &core });
|
||||
for (const std::string_view test : libraryTests) cfg.AddTest(test).Dependencies({ &cfg });
|
||||
cfg.AddTest("ShouldRunClientCommands").Dependencies({ &cfg, &cli });
|
||||
cfg.AddTest("ShouldServeOverQuic").Dependencies({ &cfg, &cli });
|
||||
}
|
||||
return cfg;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue