From 9405c7a595ce6d04afde7ed8ed919f2d44fa5c36 Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Wed, 14 Oct 2026 02:55:40 +0200 Subject: [PATCH] GameCult.Thing.Contract.Tests: the persisted-catalog entries in NameSetTests move the content hash too An entry equal to the local one in content hash resolves as Exact without comparing names. Co-Authored-By: Claude Opus 5.5 --- tests/GameCult.Thing.Contract.Tests/NameSetTests.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/GameCult.Thing.Contract.Tests/NameSetTests.cs b/tests/GameCult.Thing.Contract.Tests/NameSetTests.cs index 2246370..c09fd38 100644 --- a/tests/GameCult.Thing.Contract.Tests/NameSetTests.cs +++ b/tests/GameCult.Thing.Contract.Tests/NameSetTests.cs @@ -42,7 +42,7 @@ public sealed class NameSetTests SchemaId = local.SchemaId[..^1] + (local.SchemaId[^1] == '0' ? '1' : '0'), SchemaName = local.SchemaName, SchemaVersion = local.SchemaVersion, - ContentHash = local.ContentHash, + ContentHash = local.ContentHash[..^1] + (local.ContentHash[^1] == '0' ? '1' : '0'), CanonicalSchemaJson = local.CanonicalSchemaJson, Members = local.Members.Select(m => new CultSchemaMemberCatalogEntry { @@ -58,6 +58,7 @@ public sealed class NameSetTests }; } + // A persisted entry equal in id and content hash resolves without comparison, so the entries below move both. // CultCache compares a persisted catalog with the package's names where it resolves a persisted schema id that is not // its own (ResolvePersistedSchema). Reopening a single-file store does not call it: a store whose recorded names were // patched (id and Int64 both) opens and reads at b3bd8dd5, so the comparison is exercised on the entry the store