AyCode.Core/AyCode.Core.Tests/TestModels
Loretta 8eaae4dda3 [LOADED_DOCS: 3 files, no new loads]
Benchmark stabilization & charset-param workload support

Major overhaul of the custom benchmark harness:
- Per-serializer warmup, GC isolation, pilot discard, and CPU pinning for stable, reproducible results
- Adaptive per-cell iteration targeting (~250ms/sample) and statistical reporting (min/max/stddev/CV)
- CLI/menu support for single-cell A/B runs
- Test data refactored to ASCII baselines with configurable charset suffix (6 presets), selectable via menu; charset recorded in all outputs
- Markdown/console output now includes per-op µs, inter-sample range, CV warnings, and iteration counts
- Documentation updated with rationale, methodology, and notes on reverted/experimental optimizations

Enables reliable, cross-charset, release-grade performance measurement for AcBinary.
2026-05-07 19:13:19 +02:00
..
AcSerializerModels.cs Refactor SGen: property/object marker bridges, FixObj support 2026-03-10 17:32:00 +01:00
BenchmarkTestDataProvider.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-07 19:13:19 +02:00
GeneratedSerializerTestModels.cs Add AcBinary Source Generator for fast serialization 2026-01-06 08:58:34 +01:00
README.md Document AcBinary wire format, sync docs, update conventions 2026-03-29 09:11:57 +02:00
SharedTestModels.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-01 14:01:23 +02:00
SignalRTestInfrastructure.cs Add binary serialization support for SignalR responses 2025-12-12 21:40:48 +01:00
StockTakingTestModels.cs Add expression serialization & chain API for JSON deserialization 2025-12-29 15:28:46 +01:00
TestDataFactory.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-05 15:06:11 +02:00
TestLogger.cs Add expression serialization & chain API for JSON deserialization 2025-12-29 15:28:46 +01:00

README.md

TestModels

Shared test entities, enums, data factories, and SignalR test infrastructure. Used across test and benchmark projects.

Key Files

  • SharedTestModels.cs — Enums (TestStatus, TestPriority, TestUserRole) and shared IId types (SharedTag, SharedCategory, SharedUser, MetadataInfo). Multi-serializer: [AcBinarySerializable], [MessagePackObject], [MemoryPackable].
  • AcSerializerModels.cs — 30+ test models: simple, nested, collections, nullable, StockTaking hierarchy, circular references, generics, navigation properties, schema mismatch scenarios.
  • GeneratedSerializerTestModels.cs — [AcBinarySerializable] models for source generator testing.
  • StockTakingTestModels.cs — Production-like hierarchy: BaseEntity → MgEntityBase → MgStockTaking.
  • TestDataFactory.cs — Centralized factory with ID sequencing: CreateTag(), CreateCategory(), CreateUser(), CreateOrder(), CreateOrderItem().
  • SignalRTestInfrastructure.cs — SignalRMessageFactory, DTOs, CommonSignalRTags, SignalRBenchmarkData.
  • TestLogger.cs — Logger with capture for assertions: HasErrorLogs, HasWarningLogs, GetErrorMessages().