CultLib/tests/GameCult.Networking.Tests
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens d7eacd1011 Ack Cut 3 F1: the 4 MiB flow bound counts acknowledged bytes above the lowest unacknowledged sequence
The bound summed only packets still awaiting an ack. Once frames above a lost
packet were acknowledged they stopped counting, so a receiver could be made to
hold more than 4 MiB behind one loss, and its hold buffer ended the session.
The sender now keeps the payload size of each acknowledged sequence above the
lowest pending one until the lowest advances past it, in Rust, TypeScript,
Python and C#. Tests per runtime: one lost packet, four acknowledged 1 MiB
frames, the fifth refused until the gap closes; and the floor moving to a new
lowest sequence.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 12:04:19 +02:00
..
CultCachePublicationIsolationTests.cs Narrow the escaped-observer probe to what this base can show 2026-09-29 16:57:04 +02:00
CultNetCanonicalNumberTests.cs CultNet selection cut1 fix batch: R-I/K/D tests and R-A/R-M reflection fix 2026-09-22 09:39:36 +02:00
CultNetDocumentBindingResolverTests.cs Make generated and reflective document members one rule 2026-09-13 22:00:16 +02:00
CultNetDocumentRegistryVariantTests.cs CultNet: a withdrawn hop subscription is refused with a typed error and its rows are withdrawn 2026-09-29 10:12:20 +02:00
CultNetJournalTests.cs Dispose test: hold the writer in an earlier observer so Dispose must publish what it logged 2026-09-30 07:03:15 +02:00
CultNetOperationServerTests.cs Bind CultMesh authority identity to physical routes 2026-08-18 17:21:58 +02:00
CultNetPublicationOrderTests.cs Networking tests: order is data, so pin each change's own publication, not its delivery order 2026-09-29 23:52:14 +02:00
CultNetPublishesCommitsTests.cs Pin the single-owner publication cases Soul falsified 2026-09-29 13:21:39 +02:00
CultNetRudpConnectGenerationTests.cs Ack Cut 1d batch 2 (C#): an Ack does not retire a Connect awaiting its Accept; the fresh attempt jumps by the receive window less one 2026-09-30 09:53:06 +02:00
CultNetRudpOrderedDeliveryTests.cs Ack Cut 1 tests: three held frames, the Rust byte bound, reset reseeds 2026-09-30 00:20:04 +02:00
CultNetRudpSessionEndingTests.cs Ack Cut 1b tests: an ending does not forget what the peer sent 2026-09-30 00:24:19 +02:00
CultNetSchemaContractTests.cs Cut 4 Soul 4c: committed-unlogged wire writes, database serves only what it owns, typed unowned refusal 2026-09-30 06:14:49 +02:00
CultNetSchemaServerGroupTests.cs Share CultNet handlers across transports 2026-08-18 01:31:04 +02:00
CultNetSelectionEvaluatorTests.cs Land fix batch 3's R-O and R-Q: keyed length-prefixed cursors, replica-apply sequence gap 2026-09-22 20:04:22 +02:00
CultNetSelectionFixBatchTests.cs R-AT: fix the C# self-citer fixture's naming so it actually defeats push-order luck 2026-09-23 08:38:27 +02:00
CultNetSelectionPageTests.cs CultNet selection cut1 fix batch: R-I/K/D tests and R-A/R-M reflection fix 2026-09-22 09:39:36 +02:00
CultNetSelectionSurvivorTests.cs Correct one comment still naming the deleted To.SchemaId tiebreak 2026-09-23 09:21:52 +02:00
GameCult.Networking.Tests.csproj Add GameCult Mesh package home 2026-05-19 19:08:48 +01:00
MiniJsonSchemaValidator.cs Fix batch 4 (R-X, S-4/S-10): the error schema matches the wire, and the validator refuses a keyword it does not implement 2026-09-22 21:12:23 +02:00
NetworkingTests.cs Ack Cut 3 F1: the 4 MiB flow bound counts acknowledged bytes above the lowest unacknowledged sequence 2026-09-30 12:04:19 +02:00
README.md JSON backing store, I/O fixes, Networking Security 2026-04-18 13:01:24 +01:00
SelectionParityVectorTests.cs R-AO: shared vector for two-in-target shared-key resolution 2026-09-23 07:18:11 +02:00
SelectionWireParityTests.cs R-AZ: mirror the all-absent Edge vector into the C# parity test 2026-09-23 09:08:42 +02:00
SoulP4cProbeTests.cs Cut 4 Soul 4d: a skipped entry is relayed as the primary sent it; probes, wire cases and the closed-enum rule committed 2026-09-30 08:03:09 +02:00
SoulP4dProbeTests.cs Cut 4 Soul 4d: a skipped entry is relayed as the primary sent it; probes, wire cases and the closed-enum rule committed 2026-09-30 08:03:09 +02:00
SoulP4ProbeTests.cs Journal fixes: hole floor on restart, one log exception per call, no shape guard, no stray shard-0 logging 2026-09-30 02:48:49 +02:00
SoulPub3Tests.cs Soul probes: commit the pass-3 P-tests and the Cut 4 probes as recovered 2026-09-30 02:38:50 +02:00

GameCult.Networking.Tests

GameCult.Networking.Tests contains NUnit tests for the networking library.

Scope

The tests currently cover:

  • AES-GCM encrypt/decrypt round-trips in Secret
  • signed session-token validation
  • signed session-token tamper detection
  • signed session-token expiry handling

Run

dotnet test tests\GameCult.Networking.Tests\GameCult.Networking.Tests.csproj

Adding New Tests

Typical future areas to expand include:

  • client reconnect and verify flows
  • login and registration integration tests
  • malformed message handling
  • rate-limiting behavior under concurrency