| Filename | Latest commit message | Latest commit date |
|---|---|---|
A load or write that landed a variant reached CultNet subscribers as a plain "added" record carrying the full resolved payload; a later base edit published only the base, so the subscriber's copy of the variant went stale. Under Q6 CultNet carries no variants until its own cut. Both live paths now refuse a change whose key holds a variant, after selection and authorization match, and send the matching subscriber a CultNetErrorMessage naming the variant and its base. Refused loudly rather than omitted: an omission is a silent hole in the subscriber's view, and the snapshot path already refuses by throwing. Tests: a real load through a real RUDP subscription never delivers the variant as a record and delivers the typed error; the database server's change builder refuses the same change. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> |
||
| .. | ||
| CultNetCanonicalNumberTests.cs | ||
| CultNetDocumentBindingResolverTests.cs | ||
| CultNetDocumentRegistryVariantTests.cs | ||
| CultNetOperationServerTests.cs | ||
| CultNetSchemaContractTests.cs | ||
| CultNetSchemaServerGroupTests.cs | ||
| CultNetSelectionEvaluatorTests.cs | ||
| CultNetSelectionFixBatchTests.cs | ||
| CultNetSelectionPageTests.cs | ||
| CultNetSelectionSurvivorTests.cs | ||
| GameCult.Networking.Tests.csproj | ||
| MiniJsonSchemaValidator.cs | ||
| NetworkingTests.cs | ||
| README.md | ||
| SelectionParityVectorTests.cs | ||
| SelectionWireParityTests.cs | ||
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