Introduced Newtonsoft.Json-backed persistence. Improved backing-store reliability and serialization across the caching stack. Improved networking security posture. Key changes: - Add new GameCult.Caching.NewtonsoftJson project with SingleFile/MultiFile backing stores and polymorphic known-type envelopes. - Add MessagePack helper serialization (DatabaseEntrySerialization) and update MessagePack backing stores to use the shared options/resolver; add DatabaseLink formatter and generator/analyzer docs. - Update CultLib.sln to include the new projects and new caching tests project. - Improve CultCache persistence behavior: track pending store operations, wait for operations on PullAll, and centralize async push handling with error logging. - Harden file I/O in multi-file/single-file stores: atomic temp-file writes, safe Replace/Move semantics, rename-safe deletes, and improved file-watcher subscription and debounce disposal. - Add README files and documentation for several subprojects and packaging projects. These changes add JSON persistence support, improve serialization consistency, and make on-disk operations more robust and observable.
27 lines
626 B
Markdown
27 lines
626 B
Markdown
# 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
|
|
|
|
```powershell
|
|
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
|