From 6eb0fbde4652825a048bc74c27ca762262359026 Mon Sep 17 00:00:00 2001 From: Erik Date: Thu, 18 Jun 2026 17:08:19 +0200 Subject: [PATCH] =?UTF-8?q?test(D.5.4):=20lock=20creature=20Name/Type=20re?= =?UTF-8?q?solution=20via=20ClientObjectTable.Get=20(spec=20=C2=A78)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 (1M context) --- .../Items/ClientObjectTableTests.cs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/AcDream.Core.Tests/Items/ClientObjectTableTests.cs b/tests/AcDream.Core.Tests/Items/ClientObjectTableTests.cs index 871451c5..3d873cca 100644 --- a/tests/AcDream.Core.Tests/Items/ClientObjectTableTests.cs +++ b/tests/AcDream.Core.Tests/Items/ClientObjectTableTests.cs @@ -308,6 +308,17 @@ public sealed class ClientObjectTableTests Assert.Empty(table.GetContents(0xDEADu)); } + [Fact] + public void Ingest_CreatureTyped_ResolvesNameAndTypeViaGet() // spec ยง8: selection/describe creature resolution after _liveEntityInfoByGuid retirement + { + var table = new ClientObjectTable(); + table.Ingest(FullWeenie(0x560u, name: "Drudge", type: ItemType.Creature)); + var o = table.Get(0x560u); + Assert.NotNull(o); + Assert.Equal("Drudge", o!.Name); // LiveName(guid) reads this + Assert.True((o.Type & ItemType.Creature) != 0); // LiveItemType(guid) & Creature drives creature targeting + } + [Fact] public void ContainerIndex_SlotChange_ResortsInPlace() // guards the Reindex same-container early-out {