AyCode.Core/AyCode.Core.Tests/Serialization
Loretta cdcb200643 Add LLM onboarding docs and standardize project READMEs
- Introduced `.github/copilot-instructions.md` as the single source of truth for domain rules, conventions, and pitfalls in each solution.
- Added `CLAUDE.md` to guide Claude to read domain rules, glossary, and README before code generation.
- Updated all solution and project `README.md` files to document project purpose, structure, key files, and LLM context (Copilot/Claude/Cursor).
- Added or revised `docs/ARCHITECTURE.md`, `docs/CONVENTIONS.md`, and `docs/GLOSSARY.md` to clarify dependency graphs, naming, patterns, and terminology.
- For FruitBankHybridApp, added `docs/SCHEMA.md` (Toon format) and expanded the glossary with business/measurement terms and common traps.
- Updated all subfolder READMEs to list key files, conventions, and LLM maintenance notes.
- Ensured all documentation is cross-referenced, up-to-date, and includes explicit instructions for LLMs to keep docs in sync with code and avoid suggesting removal/rollback as a solution.
- Standardized documentation and onboarding for maintainability and LLM/code quality across all solutions.
2026-03-28 22:38:23 +01:00
..
AcBinaryDateTimeSerializationTests.cs Refactor: Add high-perf JSON serializer & merge support 2025-12-14 19:34:49 +01:00
AcBinarySerializerBasicTests.cs Polymorphic serialization: slot-based prefix system overhaul 2026-03-09 15:04:46 +01:00
AcBinarySerializerBenchmarkTests.cs Refactor string interning to use enum and attribute 2026-01-26 11:04:25 +01:00
AcBinarySerializerChainReferenceTests.cs Refactor: Add high-performance Chain API for serializers 2025-12-29 22:41:28 +01:00
AcBinarySerializerChainTests.cs Refactor: Add high-performance Chain API for serializers 2025-12-29 22:41:28 +01:00
AcBinarySerializerCircularReferenceTests.cs Update serializer tests for param options; swap option defaults 2026-02-25 09:43:55 +01:00
AcBinarySerializerDateTimeTests.cs Add expression serialization & chain API for JSON deserialization 2025-12-29 15:28:46 +01:00
AcBinarySerializerDiagnosticTests.cs Refactor SGen: property/object marker bridges, FixObj support 2026-03-10 17:32:00 +01:00
AcBinarySerializerGenericTypeTests.cs Add expression serialization & chain API for JSON deserialization 2025-12-29 15:28:46 +01:00
AcBinarySerializerIIdReferenceTests.cs Refactor SGen: property/object marker bridges, FixObj support 2026-03-10 17:32:00 +01:00
AcBinarySerializerNavigationPropertyTests.cs Refactor: unify reference handling, footer string interning, benchmarks 2026-01-23 10:50:19 +01:00
AcBinarySerializerNullableTests.cs Add expression serialization & chain API for JSON deserialization 2025-12-29 15:28:46 +01:00
AcBinarySerializerObjectTests.cs Update enum values, PropertySkip code, and add int tests 2026-01-05 09:44:02 +01:00
AcBinarySerializerStringInterningTests.cs Refactor string interning to use enum and attribute 2026-01-26 11:04:25 +01:00
AcExpressionNodeSerializationTests.cs Refactor: centralize strongly-typed property accessors 2026-01-21 10:36:06 +01:00
AcJsonSerializerChainTests.cs Add expression serialization & chain API for JSON deserialization 2025-12-29 15:28:46 +01:00
AcJsonSerializerIIdReferenceTests.cs Add domain context to Toon meta; IId ref tests for JSON/Bin 2026-01-16 09:27:59 +01:00
AcSerializerTestHelper.cs Add expression serialization & chain API for JSON deserialization 2025-12-29 15:28:46 +01:00
ChainReferenceDebugTest.cs IId-based reference deduplication for serialization 2026-01-16 22:55:52 +01:00
GeneratedSerializerIntegrationTests.cs Generate IGeneratedBinaryWriter for fast serialization 2026-02-14 20:50:38 +01:00
QuickBenchmark.cs Improve circular reference handling in binary serializer 2026-02-23 16:01:37 +01:00
README.md Add LLM onboarding docs and standardize project READMEs 2026-03-28 22:38:23 +01:00

README.md

Serialization Tests

Comprehensive test suite for binary and JSON serialization: round-trips, reference handling, chains, and source generator integration.

Key Files

Basic Types

  • AcBinarySerializerBasicTests.cs — Primitives: int, double, string, bool, DateTime, Guid.
  • AcBinarySerializerDateTimeTests.cs — DateTime handling and type mismatch detection.
  • AcBinarySerializerNullableTests.cs — Nullable types: int?, long?, etc.

Complex Objects

  • AcBinarySerializerObjectTests.cs — Nested objects and hierarchies.
  • AcBinarySerializerNavigationPropertyTests.cs — EF-style navigation properties.
  • AcBinarySerializerGenericTypeTests.cs — Generic type parameters.

Reference Handling

  • AcBinarySerializerChainTests.cs — Binary Chain API (CreateDeserializeChain, ThenDeserialize).
  • AcBinarySerializerChainReferenceTests.cs — Chain with $id/$ref references.
  • AcBinarySerializerCircularReferenceTests.cs — Circular/bidirectional references.
  • AcBinarySerializerIIdReferenceTests.cs — IId interface-based reference tracking.
  • AcBinarySerializerStringInterningTests.cs — String deduplication via [AcStringIntern].

JSON

  • AcJsonSerializerChainTests.cs — JSON chain operations.
  • AcJsonSerializerIIdReferenceTests.cs — JSON $id/$ref handling.
  • AcExpressionNodeSerializationTests.cs — Expression tree serialization.

Source Generator & Performance

  • GeneratedSerializerIntegrationTests.cs — Verifies generated writer types implement IGeneratedBinaryWriter.
  • QuickBenchmark.cs — Performance comparison: AcBinary vs MessagePack.
  • AcSerializerTestHelper.cs — Factory methods for test data.

LLM Maintenance: If you modify code in this folder, update this README to reflect the changes. If you notice the README content does not match the current code, automatically update the README to match the code.