ModernUO/Projects/UOContent.Tests/Fixtures
Kamron Batman 6b36afa77f feat(spawners): add SpawnerJsonSerializer + typed JSON binding for Spawner
Implements Task 2 of the spawner STJ migration:
- SpawnerJsonSerializer: assembly discovery of [JsonDiscoverableType]-marked
  BaseSpawner subclasses, STJ polymorphism on $type, property pruning to
  [JsonPropertyName]-only, and OnDeserialized→OnAfterJsonDeserialize() hook.
- BaseSpawner.Json.cs: shadow JSON properties for all BaseSpawner fields,
  OnAfterJsonDeserialize() virtual method that applies deserialized state.
- Spawner.Json.cs: JsonSpawnBounds shadow property, override of
  OnAfterJsonDeserialize() to apply spawnBounds after base.
- Spawner.cs: [JsonDiscoverableType] + [JsonConstructor] on parameterless ctor.
- TestServerInitializer: SpawnerJsonSerializer.Configure() wired in.
- SpawnerRoundTripTests: 2 tests (round-trip core fields, omits domain defaults).

Old DynamicJson ctors and ToJson() left in place; removal is Task 9.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 10:27:55 -07:00
..
PathfindingTestFixture.cs fix(tests): single shared bootstrap; idempotent SerializationThreadWorker.Exit (#2473) 2026-06-07 12:36:37 -07:00
TestServerInitializer.cs feat(spawners): add SpawnerJsonSerializer + typed JSON binding for Spawner 2026-06-25 10:27:55 -07:00
UOContentFixture.cs fix(tests): single shared bootstrap; idempotent SerializationThreadWorker.Exit (#2473) 2026-06-07 12:36:37 -07:00