AyCode.Core/AyCode.Services.Server.Tests
Loretta f051f32bfa Refactor MaxDepth handling: explicit Throw/Truncate/Disable
- Introduce `MaxDepthBehavior` option (`Throw`, `Truncate`, `Disable`) for explicit depth-limit handling in AcBinarySerializer and SGen.
- Default is now `Throw` (fail-fast); `ShallowCopy` preset uses `Truncate` for shallow-copy semantics.
- Refactor runtime and SGen paths to use unified `TryEnterRecursion`/`ExitRecursion` for correct wire output and inc/dec symmetry.
- Add focused tests to diagnose SGen+Truncate wire-misalignment bug (see `BINARY_ISSUES.md#accore-bin-i-t7k3`).
- Update docs and comments to clarify new behavior and document Toon serializer's current lack of `MaxDepthBehavior` support.
- Adjust tests and usages for new semantics and improved safety.
2026-05-14 14:13:48 +02:00
..
LoginServices Document AcBinary wire format, sync docs, update conventions 2026-03-29 09:11:57 +02:00
SignalRs Refactor MaxDepth handling: explicit Throw/Truncate/Disable 2026-05-14 14:13:48 +02:00
AyCode.Services.Server.Tests.csproj Update dependencies and expand README documentation 2026-03-20 16:42:51 +01:00
InvokeMethodExtensionTests.cs [LOADED_DOCS: 2 files, no new loads] 2026-05-13 08:40:42 +02:00
README.md Add structured metadata blocks to all project/repo docs 2026-03-30 08:53:56 +02:00
TestLogger.cs Refactor JSON/SignalR infra; add full test & benchmark suite 2025-12-11 21:25:50 +01:00

README.md

AyCode.Services.Server.Tests

@project { type = "test" }

Comprehensive server-side tests for SignalR communication, DataSource operations, login services, and reflection-based method invocation.

Folder Structure

Folder Purpose
SignalRs/ Full SignalR client→hub→service test infrastructure
LoginServices/ Login service test base classes

Key Files (Root)

  • TestLogger.cs — Re-exports TestLogger from AyCode.Core.Tests.
  • InvokeMethodExtensionTests.cs — Tests MethodInfo.InvokeMethod: sync, async Task unwrapping, Task.FromResult (production bug fix), non-generic Task, complex objects.