diff --git a/tests/GameCult.Caching.Tests/CachelessSingleFileTests.cs b/tests/GameCult.Caching.Tests/CachelessSingleFileTests.cs index 67d59a5b..a3c5af78 100644 --- a/tests/GameCult.Caching.Tests/CachelessSingleFileTests.cs +++ b/tests/GameCult.Caching.Tests/CachelessSingleFileTests.cs @@ -1213,18 +1213,15 @@ namespace GameCult.Caching.Tests { var registry = CultDocumentRegistry.ForTypes(new[] { typeof(TapDoc) }); var store = new RoleStore(_path); - Exception? inner = null; - TapDoc.Hook = () => - { - try { store.WriteDocument(new CultRecordKey("inner"), new TapDoc { Name = "inner" }, registry: registry); } - catch (Exception error) { inner = error; } - }; + TapDoc.Hook = () => store.WriteDocument(new CultRecordKey("inner"), new TapDoc { Name = "inner" }, registry: registry); var outer = Assert.Catch(() => store.WriteDocument(new CultRecordKey("outer"), new TapDoc { Name = "outer" }, registry: registry)); - Assert.That(inner, Is.InstanceOf()); - Assert.That(inner!.Message, Does.StartWith(ReentryRefusal)); - Assert.That(Refused(outer), Is.True, "the outer write failed with the getter's exception"); + Assert.That(Refused(outer), Is.True, "the outer write failed with the inner call's refusal"); + var refusal = outer!; + while (refusal is not InvalidOperationException && refusal.InnerException != null) + refusal = refusal.InnerException; + Assert.That(refusal.Message, Does.StartWith(ReentryRefusal)); Assert.That(File.Exists(_path), Is.False); Assert.That(store.Attached, Is.Null); } diff --git a/tests/GameCult.Caching.Tests/ElementIdTests.cs b/tests/GameCult.Caching.Tests/ElementIdTests.cs index 41af34fb..db2fd193 100644 --- a/tests/GameCult.Caching.Tests/ElementIdTests.cs +++ b/tests/GameCult.Caching.Tests/ElementIdTests.cs @@ -930,12 +930,10 @@ namespace GameCult.Caching.Tests cache.Commit(batch => { batch.Upsert(typeof(IdDeck), EmptyDeck("base"), new CultRecordKey("base")); - batch.UpsertVariant(new CultRecordKey("v"), new CultRecordKey("base"), new[] - { - overridden == "name" - ? cache.Override(nameof(IdDeck.Name), "v") - : cache.Override(nameof(IdDeck.Reels), new List { new() { Label = "r", Id = HexA } }), - }); + var name = cache.Override(nameof(IdDeck.Name), "v"); + batch.UpsertVariant(new CultRecordKey("v"), new CultRecordKey("base"), overridden == "name" + ? new[] { name } + : new[] { name, cache.Override(nameof(IdDeck.Reels), new List { new() { Label = "r", Id = HexA } }) }); }); }