AyCode.Core/AyCode.Services.Server.Tests/SignalRs/SignalRDatasources/README.md

27 lines
1.5 KiB
Markdown

# SignalRDatasources
DataSource CRUD, collection, tracking, and filter tests. Tested with List and AcObservableCollection over Binary and JSON serialization.
## Key Files
### Test Base (partial class)
- **`SignalRDataSourceTestBase.cs`** — Abstract generic base with SignalR infrastructure setup.
- **`SignalRDataSourceTestBase.Collections.cs`** — Count, Clear, Contains tests.
- **`SignalRDataSourceTestBase.ContextAndFilter.cs`** — ContextIds, FilterText, Expression filter with AcExpressionNode.
- **`SignalRDataSourceTestBase.CrudOperations.cs`** — Add (auto-save, tracking-only, duplicate/default ID validation).
- **`SignalRDataSourceTestBase.LoadDataSource.cs`** — Full DataSource load.
- **`SignalRDataSourceTestBase.LoadItem.cs`** — Single item load by ID.
- **`SignalRDataSourceTestBase.SaveChanges.cs`** — Persist tracked changes.
- **`SignalRDataSourceTestBase.Tracking.cs`** — Change tracking states (Add, Update, Delete).
### Concrete Test Classes
- **`SignalRDataSourceTests_List_Binary.cs`** — List + Binary.
- **`SignalRDataSourceTests_List_Binary_NoRef.cs`** — List + Binary without references.
- **`SignalRDataSourceTests_List_Json.cs`** — List + JSON.
- **`SignalRDataSourceTests_Observable_Binary.cs`** — ObservableCollection + Binary.
- **`SignalRDataSourceTests_Observable_Json.cs`** — ObservableCollection + JSON.
### Test DataSources
- **`TestOrderItemListDataSource.cs`** — DataSource with List<TestOrderItem>.
- **`TestOrderItemObservableDataSource.cs`** — DataSource with AcObservableCollection<TestOrderItem>.