Introduce diagnostic and test infrastructure for SignalR binary protocol serialization/deserialization, including: - ProtocolRoundTripDiagnosticTest for isolated protocol byte inspection - TestMultiSegmentProtocol to exercise multi-segment buffer parsing - TestInvocationBinder for correct parameter type binding - Updates to TestableSignalRClient2 and TestableSignalRHub2 to route all messages through protocol round-trip - Enhanced SendMessageToClient to simulate real SignalR transport - Clarified SequenceBinaryInput segment handling logic - Made TryParseMessage virtual in AcBinaryHubProtocol for testability These changes improve test coverage for cross-boundary and multi-segment scenarios in SignalR message handling. |
||
|---|---|---|
| .. | ||
| SignalRDatasources | ||
| README.md | ||
| SignalRClientToHubTest.cs | ||
| SignalRTestHelper.cs | ||
| TestInvocationBinder.cs | ||
| TestMultiSegmentProtocol.cs | ||
| TestSignalRService2.cs | ||
| TestSignalRTags.cs | ||
| TestableSignalRClient2.cs | ||
| TestableSignalRHub2.cs | ||
README.md
SignalRs
Full SignalR client→hub→service test infrastructure with testable components that bypass real network connections.
Key Files
SignalRClientToHubTest.cs— Abstract round-trip test base. Tests: Post_SingleInt, Post_TwoInts, Post_Bool, Post_String, Post_Guid, Post_Enum, and more.TestableSignalRClient2.cs—AcSignalRClientBaseimplementation: direct hub calls, zero network, zero delays.TestableSignalRHub2.cs—AcWebSignalRHubBaseimplementation: simulates connection state, user identity, claims. Captures responses.TestSignalRService2.cs— 50+ methods: primitives (23), complex objects (3), collections (9), arrays (6), mixed (4), async (4), Task.FromResult (4), large datasets, property mismatch, DataSource CRUD (7), production bug reproductions.TestSignalRTags.cs— 50+ const int message tags (100-500 range).SignalRTestHelper.cs— CreatePrimitiveParamsMessage, CreateComplexObjectMessage, GetResponseData, AssertSuccessResponse.
Subfolders
| Folder | Purpose |
|---|---|
SignalRDatasources/ |
DataSource CRUD and collection tests |