AyCode.Core/AyCode.Services.Server.Tests
Loretta 05808d0d13 SignalR: Add raw byte[] fast-path for DataSource GetAll
Implements a high-performance raw byte[] protocol path for SignalR DataSource GetAll/LoadDataSource, using a new IsRawBytesData flag in SignalParams. When enabled, the server pre-serializes response data and sends it as a byte array, which the protocol passes through without further (de)serialization. The client receives the raw bytes and deserializes as needed, avoiding double serialization/deserialization and improving performance for large payloads.

Adds SerializerType selection to DataSource, propagates SignalParams through hub and protocol layers, and updates client/server/test code to support the new path. Also includes diagnostics flags for binary serialization debugging and fixes for multi-segment buffer handling.
2026-04-07 00:20:52 +02:00
..
LoginServices Document AcBinary wire format, sync docs, update conventions 2026-03-29 09:11:57 +02:00
SignalRs SignalR: Add raw byte[] fast-path for DataSource GetAll 2026-04-07 00:20:52 +02:00
AyCode.Services.Server.Tests.csproj Update dependencies and expand README documentation 2026-03-20 16:42:51 +01:00
InvokeMethodExtensionTests.cs Refactor JSON/SignalR infra; add full test & benchmark suite 2025-12-11 21:25:50 +01: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.