diff --git a/tests/Aetheria.Shared.Tests/AetheriaStoresTests.cs b/tests/Aetheria.Shared.Tests/AetheriaStoresTests.cs index e0fec193d..e4eddeb22 100644 --- a/tests/Aetheria.Shared.Tests/AetheriaStoresTests.cs +++ b/tests/Aetheria.Shared.Tests/AetheriaStoresTests.cs @@ -8,10 +8,6 @@ using GameCult.Caching.MessagePack; using MessagePack; using Xunit; -// A [CultGlobal] routed to the catalog (PersonalityAttribute is a catalog home). The game has none yet, so this is -// the only way to prove a read-only catalog refuses to open without one. -[CultDocument("aetheria.tests.catalogglobal", "1"), CultGlobal, MessagePackObject] -public class TestCatalogGlobal : PersonalityAttribute { } // Each test gets its own temp directory holding a catalog built through Open(catalogWritable: true). public sealed class AetheriaStoresTests : IDisposable @@ -25,7 +21,7 @@ public sealed class AetheriaStoresTests : IDisposable { Directory.CreateDirectory(_root); using var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var faction = new Faction { Name = "Adrasteia", ShortName = "ADR", PrimaryColor = new float3(1, .5f, .25f) }; faction.Allegiance[cache.Upsert(faction)] = 1; cache.Upsert(faction); @@ -118,7 +114,7 @@ public sealed class AetheriaStoresTests : IDisposable var empty = Path.Combine(_root, "empty.cc"); using (AetheriaStores.Open(empty, catalogWritable: true)) { } var error = Assert.Throws(() => AetheriaStores.Open(empty)); - Assert.Contains("aetheria.tests.catalogglobal", error.Message); + Assert.Contains("aetheria.verse_grammar", error.Message); using (AetheriaStores.Open(Catalog)) { } } @@ -128,13 +124,13 @@ public sealed class AetheriaStoresTests : IDisposable { using (var cache = AetheriaStores.Open(Catalog, catalogWritable: true)) { - var global = cache.GetGlobal(); + var global = cache.GetGlobal(); var key = cache.RefOf(global).Key; Assert.True(cache.Commit(batch => batch.Remove(key))); } var error = Assert.Throws(() => AetheriaStores.Open(Catalog, catalogWritable: true)); - Assert.Contains("aetheria.tests.catalogglobal", error.Message); + Assert.Contains("aetheria.verse_grammar", error.Message); } // The game opens the catalog read-only with its run and player stores, in the editor as in a build: a populated @@ -143,10 +139,10 @@ public sealed class AetheriaStoresTests : IDisposable public void GameShapedOpenMissingGlobalIsLoud() { using (var cache = AetheriaStores.Open(Catalog, catalogWritable: true)) - Assert.True(cache.Commit(batch => batch.Remove(cache.RefOf(cache.GetGlobal()).Key))); + Assert.True(cache.Commit(batch => batch.Remove(cache.RefOf(cache.GetGlobal()).Key))); var error = Assert.Throws(() => AetheriaStores.Open(Catalog, Run, Player)); - Assert.Contains("aetheria.tests.catalogglobal", error.Message); + Assert.Contains("aetheria.verse_grammar", error.Message); } // --- F7 (docs/stats-and-power-cut.md, Soul pass 2026-09-19): "there are at least four [write bypasses]." diff --git a/tests/Aetheria.Shared.Tests/BrownoutTests.cs b/tests/Aetheria.Shared.Tests/BrownoutTests.cs index b4a691574..7a4c75a50 100644 --- a/tests/Aetheria.Shared.Tests/BrownoutTests.cs +++ b/tests/Aetheria.Shared.Tests/BrownoutTests.cs @@ -76,7 +76,7 @@ public sealed class BrownoutTests : IDisposable private CultCache OpenCatalog(BehaviorData consumer) { var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(5, 5); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData { Name = "Skiff", HullType = HullType.Ship, Shape = hullShape, Durability = 10, Mass = 1000 }); diff --git a/tests/Aetheria.Shared.Tests/ConditionRatioTests.cs b/tests/Aetheria.Shared.Tests/ConditionRatioTests.cs index 13b5f281e..a05234705 100644 --- a/tests/Aetheria.Shared.Tests/ConditionRatioTests.cs +++ b/tests/Aetheria.Shared.Tests/ConditionRatioTests.cs @@ -59,7 +59,7 @@ public sealed class ConditionRatioTests : IDisposable private CultCache OpenCatalog(ThrusterData thruster, string catalogPath = null) { var cache = AetheriaStores.Open(catalogPath ?? Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(5, 5); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData { Name = "Skiff", HullType = HullType.Ship, Shape = hullShape, Durability = 10, Mass = 1000 }); diff --git a/tests/Aetheria.Shared.Tests/ConsumableTests.cs b/tests/Aetheria.Shared.Tests/ConsumableTests.cs index 3e2d89db7..b5717e9d6 100644 --- a/tests/Aetheria.Shared.Tests/ConsumableTests.cs +++ b/tests/Aetheria.Shared.Tests/ConsumableTests.cs @@ -43,7 +43,7 @@ public sealed class ConsumableTests : IDisposable { var thrust = new PerformanceStat { Min = 10, Max = 10 }; var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(new Faction { Name = "Maker", ShortName = "MKR" }); var hullShape = new Shape(3, 3); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; diff --git a/tests/Aetheria.Shared.Tests/FireAuthorityTests.cs b/tests/Aetheria.Shared.Tests/FireAuthorityTests.cs index 806f153d7..9512be458 100644 --- a/tests/Aetheria.Shared.Tests/FireAuthorityTests.cs +++ b/tests/Aetheria.Shared.Tests/FireAuthorityTests.cs @@ -94,7 +94,7 @@ public sealed class FireAuthorityTests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(new GearData { diff --git a/tests/Aetheria.Shared.Tests/FireControlCut11Tests.cs b/tests/Aetheria.Shared.Tests/FireControlCut11Tests.cs index 24ae6cd4a..ed352a535 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut11Tests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut11Tests.cs @@ -92,7 +92,7 @@ public sealed class FireControlCut11Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(new GearData { diff --git a/tests/Aetheria.Shared.Tests/FireControlCut123Tests.cs b/tests/Aetheria.Shared.Tests/FireControlCut123Tests.cs index 7faac21ce..f935c2edf 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut123Tests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut123Tests.cs @@ -104,7 +104,7 @@ public sealed class FireControlCut123Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(shooterHullData); cache.Upsert(new GearData diff --git a/tests/Aetheria.Shared.Tests/FireControlCut124Tests.cs b/tests/Aetheria.Shared.Tests/FireControlCut124Tests.cs index 6619d66a5..593a41fa4 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut124Tests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut124Tests.cs @@ -133,7 +133,7 @@ public sealed partial class FireControlCut124Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(shooterHullData); cache.Upsert(new WeaponItemData diff --git a/tests/Aetheria.Shared.Tests/FireControlCut12Tests.cs b/tests/Aetheria.Shared.Tests/FireControlCut12Tests.cs index 5ab1d2862..2c0623273 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut12Tests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut12Tests.cs @@ -130,7 +130,7 @@ public sealed class FireControlCut12Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(shooterHullData); cache.Upsert(new GearData diff --git a/tests/Aetheria.Shared.Tests/FireControlCut4Tests.cs b/tests/Aetheria.Shared.Tests/FireControlCut4Tests.cs index a6c1cc1bc..c73d486e3 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut4Tests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut4Tests.cs @@ -82,7 +82,7 @@ public sealed class FireControlCut4Tests : IDisposable { var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(MakeHullData()); cache.Upsert(new GearData { @@ -205,7 +205,7 @@ public sealed class FireControlCut4Tests : IDisposable { var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(MakeHullData()); cache.Upsert(new GearData { @@ -258,7 +258,7 @@ public sealed class FireControlCut4Tests : IDisposable { var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(MakeHullData(armor)); cache.FlushAsync().Wait(); diff --git a/tests/Aetheria.Shared.Tests/FireControlCut5Tests.cs b/tests/Aetheria.Shared.Tests/FireControlCut5Tests.cs index f966938e1..327b6e9e9 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut5Tests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut5Tests.cs @@ -97,7 +97,7 @@ public sealed class FireControlCut5Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(new GearData { @@ -284,7 +284,7 @@ public sealed class FireControlCut5Tests : IDisposable { var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(new HullData { Name = "Hull", HullType = HullType.Ship, Shape = SolidShape(5, 5), Durability = 1000, Mass = 1000, @@ -393,7 +393,7 @@ public sealed class FireControlCut5Tests : IDisposable { var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(new HullData { Name = "Hull", HullType = HullType.Ship, Shape = SolidShape(3, 3), Durability = 1000, Mass = 1000, @@ -534,7 +534,7 @@ public sealed class FireControlCut5Tests : IDisposable { var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(new HullData { Name = "Hull", HullType = HullType.Ship, Shape = SolidShape(6, 4), Durability = 1000, Mass = 1000 diff --git a/tests/Aetheria.Shared.Tests/FireControlCut6Tests.cs b/tests/Aetheria.Shared.Tests/FireControlCut6Tests.cs index 9698d741d..8f581a33d 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut6Tests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut6Tests.cs @@ -89,7 +89,7 @@ public sealed class FireControlCut6Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); // Cut 6b, 6.2 (renamed 12.4(a)): a real WeaponItemData (not the bare GearData earlier cuts' fixtures // use) -- it is the one catalog type carrying Fuse and BlastRadius. WeaponModifiers no longer decides diff --git a/tests/Aetheria.Shared.Tests/FireControlCut6cTests.cs b/tests/Aetheria.Shared.Tests/FireControlCut6cTests.cs index d02d8f9b7..586c658b4 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut6cTests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut6cTests.cs @@ -83,7 +83,7 @@ public sealed class FireControlCut6cTests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(new GearData { @@ -198,7 +198,7 @@ public sealed class FireControlCut6cTests : IDisposable CultRecordRef maker, targetingMaker; using (var seedCache = AetheriaStores.Open(Catalog, catalogWritable: true)) { - seedCache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + seedCache.Upsert(new VerseGrammar { Revision = 1 }); maker = seedCache.Upsert(new Faction { Name = "Maker", ShortName = "MKR" }); targetingMaker = seedCache.Upsert(new Faction { Name = "Targeting Maker", ShortName = "TGM" }); diff --git a/tests/Aetheria.Shared.Tests/FireControlCut6dTests.cs b/tests/Aetheria.Shared.Tests/FireControlCut6dTests.cs index 8b9d39cf1..fdf54d5f2 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut6dTests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut6dTests.cs @@ -85,7 +85,7 @@ public sealed class FireControlCut6dTests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(new GearData { diff --git a/tests/Aetheria.Shared.Tests/FireControlCut7Tests.cs b/tests/Aetheria.Shared.Tests/FireControlCut7Tests.cs index aca0f24ba..4459ae9f2 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut7Tests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut7Tests.cs @@ -80,7 +80,7 @@ public sealed class FireControlCut7Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(new GearData { @@ -239,20 +239,14 @@ public sealed class FireControlCut7Tests : IDisposable throw new DirectoryNotFoundException("Run from inside the Aetheria repository -- built test output was not under a recognizable repo root."); } - // AetheriaStores.Open (Assets/Scripts/ServerShared/AetheriaStores.cs) uses `new CultCache()`, whose - // default registry (CultDocumentRegistry.Shared) auto-discovers every [CultDocument] type loaded - // ANYWHERE in the current process by scanning the whole AppDomain -- including this very test - // assembly's own TestCatalogGlobal (AetheriaStoresTests.cs: [CultGlobal], routed to the catalog through - // PersonalityAttribute). The shipped catalog naturally carries no record of a test-only type it has - // never heard of, so opening it through the shared, process-wide registry throws "no - // aetheria.tests.catalogglobal record" -- a same-process, cross-assembly artifact of this test suite, - // not something the real game process (which never loads TestCatalogGlobal) can ever hit. + // AetheriaStores.Open uses `new CultCache()`, whose default registry (CultDocumentRegistry.Shared) discovers every + // [CultDocument] type loaded anywhere in the current process by scanning the whole AppDomain. // // This reproduces AetheriaStores.Open's own composition and validation exactly, scoped to a registry // built only from the shipped assembly's own [CultDocument] types (CultDocumentRegistry.ForTypes does // not re-scan the AppDomain the way the default constructor's Refresh() does), so this test still opens // the catalog the same way the game does -- same backing store, same missing-global check, same R-heat - // validation loop -- without the test assembly's own fixture type poisoning it. + // validation loop -- without scanning the whole AppDomain. private static CultCache OpenReadOnlyRealCatalog(string catalogPath) { var registry = CultDocumentRegistry.ForTypes(typeof(ItemData).Assembly.GetTypes() diff --git a/tests/Aetheria.Shared.Tests/FireControlCut8Tests.cs b/tests/Aetheria.Shared.Tests/FireControlCut8Tests.cs index ffde777bc..cb81bbe68 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut8Tests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut8Tests.cs @@ -83,7 +83,7 @@ public sealed class FireControlCut8Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(new GearData { @@ -177,7 +177,7 @@ public sealed class FireControlCut8Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(new GearData { diff --git a/tests/Aetheria.Shared.Tests/FireControlCut9Tests.cs b/tests/Aetheria.Shared.Tests/FireControlCut9Tests.cs index 8a2d55038..2a94080ed 100644 --- a/tests/Aetheria.Shared.Tests/FireControlCut9Tests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlCut9Tests.cs @@ -90,7 +90,7 @@ public sealed class FireControlCut9Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); // A bare, inert item -- not read by anything this test cares about, but Entity.Update's // `foreach (var item in _orderedEquipment)` NREs if an entity was never equipped with anything at @@ -286,7 +286,7 @@ public sealed class FireControlCut9Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(new GearData { @@ -527,7 +527,7 @@ public sealed class FireControlCut9Tests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(new GearData { diff --git a/tests/Aetheria.Shared.Tests/FireControlPerWeaponTests.cs b/tests/Aetheria.Shared.Tests/FireControlPerWeaponTests.cs index 60bc55e00..9ccc5fe98 100644 --- a/tests/Aetheria.Shared.Tests/FireControlPerWeaponTests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlPerWeaponTests.cs @@ -145,7 +145,7 @@ public sealed class FireControlPerWeaponTests : IDisposable var cache = AetheriaStores.Open(Catalog + Guid.NewGuid().ToString("N"), catalogWritable: true); _openCaches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(hullData); cache.Upsert(shooterHullData); cache.Upsert(new WeaponItemData diff --git a/tests/Aetheria.Shared.Tests/FireControlTests.cs b/tests/Aetheria.Shared.Tests/FireControlTests.cs index a6d40a089..8b0f16e9f 100644 --- a/tests/Aetheria.Shared.Tests/FireControlTests.cs +++ b/tests/Aetheria.Shared.Tests/FireControlTests.cs @@ -57,7 +57,7 @@ public sealed class FireControlTests : IDisposable using (var buildCache = AetheriaStores.Open(Catalog, catalogWritable: true)) { - buildCache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + buildCache.Upsert(new VerseGrammar { Revision = 1 }); buildCache.Upsert(hullData); buildCache.Upsert(new GearData { diff --git a/tests/Aetheria.Shared.Tests/HeatResponseTests.cs b/tests/Aetheria.Shared.Tests/HeatResponseTests.cs index 6844bbf5f..0f21e50d1 100644 --- a/tests/Aetheria.Shared.Tests/HeatResponseTests.cs +++ b/tests/Aetheria.Shared.Tests/HeatResponseTests.cs @@ -50,7 +50,7 @@ public sealed class HeatResponseTests : IDisposable private CultCache OpenCatalogWithThermalGear() { var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(new Faction { Name = "Maker", ShortName = "MKR" }); var hullShape = new Shape(3, 3); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; @@ -127,7 +127,7 @@ public sealed class HeatResponseTests : IDisposable { var catalog = Path.Combine(root, "Aetheria.cc"); using var cache = AetheriaStores.Open(catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var ex = Assert.Throws(() => cache.Upsert(new GearData { Name = "BadOptimum", Hardpoint = HardpointType.Sensors, Shape = new Shape(), Price = 1, @@ -148,7 +148,7 @@ public sealed class HeatResponseTests : IDisposable { var catalog = Path.Combine(root, "Aetheria.cc"); using var cache = AetheriaStores.Open(catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var ex = Assert.Throws(() => cache.Upsert(new GearData { Name = "BadPlateau", Hardpoint = HardpointType.Sensors, Shape = new Shape(), Price = 1, @@ -169,7 +169,7 @@ public sealed class HeatResponseTests : IDisposable { var catalog = Path.Combine(root, "Aetheria.cc"); using var cache = AetheriaStores.Open(catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var ex = Assert.Throws(() => cache.Upsert(new GearData { Name = "ZeroSpan", Hardpoint = HardpointType.Sensors, Shape = new Shape(), Price = 1, @@ -193,7 +193,7 @@ public sealed class HeatResponseTests : IDisposable { var catalog = Path.Combine(root, "Aetheria.cc"); using var cache = AetheriaStores.Open(catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var ex = Assert.Throws(() => cache.Upsert(new GearData { Name = "NaNHeat", Hardpoint = HardpointType.Sensors, Shape = new Shape(), Price = 1, @@ -216,7 +216,7 @@ public sealed class HeatResponseTests : IDisposable { var catalog = Path.Combine(root, "Aetheria.cc"); using var cache = AetheriaStores.Open(catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var ex = Assert.Throws(() => cache.Upsert(new GearData { Name = "PokingPlateau", Hardpoint = HardpointType.Sensors, Shape = new Shape(), Price = 1, diff --git a/tests/Aetheria.Shared.Tests/IffAndCombatTests.cs b/tests/Aetheria.Shared.Tests/IffAndCombatTests.cs index e77bfad51..3e1012889 100644 --- a/tests/Aetheria.Shared.Tests/IffAndCombatTests.cs +++ b/tests/Aetheria.Shared.Tests/IffAndCombatTests.cs @@ -21,7 +21,7 @@ public sealed class IffAndCombatTests : IDisposable { Directory.CreateDirectory(_root); using var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(3, 3); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData diff --git a/tests/Aetheria.Shared.Tests/InputCapacitorTests.cs b/tests/Aetheria.Shared.Tests/InputCapacitorTests.cs index 8f33e75e1..d72113458 100644 --- a/tests/Aetheria.Shared.Tests/InputCapacitorTests.cs +++ b/tests/Aetheria.Shared.Tests/InputCapacitorTests.cs @@ -36,7 +36,7 @@ public sealed class InputCapacitorTests : IDisposable private CultCache OpenCatalog() { var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(5, 5); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData { Name = "Skiff", HullType = HullType.Ship, Shape = hullShape, Durability = 10, Mass = 1000 }); diff --git a/tests/Aetheria.Shared.Tests/ItemTitleTests.cs b/tests/Aetheria.Shared.Tests/ItemTitleTests.cs index b54a90b0a..c96b0f6d9 100644 --- a/tests/Aetheria.Shared.Tests/ItemTitleTests.cs +++ b/tests/Aetheria.Shared.Tests/ItemTitleTests.cs @@ -23,7 +23,7 @@ public sealed class ItemTitleTests : IDisposable { Directory.CreateDirectory(_root); _cache = AetheriaStores.Open(Path.Combine(_root, "Aetheria.cc"), catalogWritable: true); - _cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + _cache.Upsert(new VerseGrammar { Revision = 1 }); _array = new GearData { Name = "Array", Hardpoint = HardpointType.Sensors, Shape = new Shape(), Price = 10, Durability = 5 }; _cache.Upsert(_array); _cache.Upsert(new SimpleCommodityData { Name = "Ore", Shape = new Shape(), Price = 7, MaxStack = 100 }); diff --git a/tests/Aetheria.Shared.Tests/LoadoutTests.cs b/tests/Aetheria.Shared.Tests/LoadoutTests.cs index 303ca8f06..5d0d523c9 100644 --- a/tests/Aetheria.Shared.Tests/LoadoutTests.cs +++ b/tests/Aetheria.Shared.Tests/LoadoutTests.cs @@ -25,7 +25,7 @@ public sealed class LoadoutTests : IDisposable { Directory.CreateDirectory(_root); using var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var maker = cache.Upsert(new Faction { Name = "Maker", ShortName = "MKR" }); var hullShape = new Shape(3, 3); diff --git a/tests/Aetheria.Shared.Tests/MineTests.cs b/tests/Aetheria.Shared.Tests/MineTests.cs index 36fb34c42..1323f8541 100644 --- a/tests/Aetheria.Shared.Tests/MineTests.cs +++ b/tests/Aetheria.Shared.Tests/MineTests.cs @@ -79,7 +79,7 @@ public sealed class MineTests : IDisposable }; var cache = AetheriaStores.Open(Path.Combine(_root, Guid.NewGuid().ToString("N") + ".cc"), catalogWritable: true); _caches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); HullData Hull(string name, Shape shape) => new HullData { Name = name, HullType = HullType.Ship, Shape = shape, Durability = 1000000, Mass = 1000, Armor = 0, diff --git a/tests/Aetheria.Shared.Tests/MiningCut3Tests.cs b/tests/Aetheria.Shared.Tests/MiningCut3Tests.cs index 186f2a35d..e7bfa7c93 100644 --- a/tests/Aetheria.Shared.Tests/MiningCut3Tests.cs +++ b/tests/Aetheria.Shared.Tests/MiningCut3Tests.cs @@ -108,7 +108,7 @@ public sealed partial class MiningCut3Tests : IDisposable Directory.CreateDirectory(dir); var cache = AetheriaStores.Open(Path.Combine(dir, "Aetheria.cc"), Path.Combine(dir, "run.cc"), catalogWritable: true); _caches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(5, 5); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; var hull = new HullData { Name = "Skiff", HullType = HullType.Ship, Shape = hullShape, Durability = 10, Mass = 1000 }; @@ -1000,7 +1000,7 @@ public sealed partial class MiningCut3Tests : IDisposable Directory.CreateDirectory(dir); var cache = AetheriaStores.Open(Path.Combine(dir, "Aetheria.cc"), Path.Combine(dir, "run.cc"), catalogWritable: true); _caches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var shape = new Shape(5, 5); foreach (var cell in shape.AllCoordinates) shape[cell] = true; var hull = new HullData { Name = "Skiff", HullType = HullType.Ship, Shape = shape, Durability = 10, Mass = 1000 }; diff --git a/tests/Aetheria.Shared.Tests/PiratesFactionCommandTests.cs b/tests/Aetheria.Shared.Tests/PiratesFactionCommandTests.cs index 6a1c245b0..8933b013e 100644 --- a/tests/Aetheria.Shared.Tests/PiratesFactionCommandTests.cs +++ b/tests/Aetheria.Shared.Tests/PiratesFactionCommandTests.cs @@ -22,9 +22,8 @@ public sealed class PiratesFactionCommandTests : IDisposable { Directory.CreateDirectory(Path.Combine(_root, "GameData")); File.Copy(Path.Combine(AetherDb.FindRoot(), "GameData", "Aetheria.cc"), CatalogPath); - // AetherDb.Open composes the process-wide registry, which in this test host also sees this assembly's TestCatalogGlobal - // (see FireControlCut7Tests). So the copy is stripped through a registry scoped to the shipped assembly and then given - // the record that registry's shared sibling demands, as AetheriaStoresTests does. + // AetherDb.Open composes the process-wide registry. So the copy is stripped through a registry scoped to the shipped + // assembly (see FireControlCut7Tests) and then given the grammar global every populated catalog must hold. var registry = CultDocumentRegistry.ForTypes(typeof(ItemData).Assembly.GetTypes() .Where(t => t is { IsAbstract: false, IsInterface: false }) .Where(t => t.GetCustomAttribute() != null)); @@ -41,7 +40,7 @@ public sealed class PiratesFactionCommandTests : IDisposable using (var cache = new CultCache()) { cache.AddBackingStore(new SingleFileMessagePackBackingStore(CatalogPath), AetheriaStores.CatalogTypes); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.FlushAsync().Wait(); } } diff --git a/tests/Aetheria.Shared.Tests/PowerBusTests.cs b/tests/Aetheria.Shared.Tests/PowerBusTests.cs index 1fb04274d..c0817c6a0 100644 --- a/tests/Aetheria.Shared.Tests/PowerBusTests.cs +++ b/tests/Aetheria.Shared.Tests/PowerBusTests.cs @@ -41,7 +41,7 @@ public sealed class PowerBusTests : IDisposable private CultCache OpenCatalog() { var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(5, 5); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; // Mass must be nonzero: HullData.SpecificHeat defaults to 1 but Mass defaults to 0, and Entity.MapEntity diff --git a/tests/Aetheria.Shared.Tests/PowerCurveTests.cs b/tests/Aetheria.Shared.Tests/PowerCurveTests.cs index 1a5a1dfd2..183238e55 100644 --- a/tests/Aetheria.Shared.Tests/PowerCurveTests.cs +++ b/tests/Aetheria.Shared.Tests/PowerCurveTests.cs @@ -64,7 +64,7 @@ public sealed class PowerCurveTests : IDisposable private CultCache OpenCatalog(PerformanceStat curveStat) { var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(5, 5); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData { Name = "Skiff", HullType = HullType.Ship, Shape = hullShape, Durability = 10, Mass = 1000 }); @@ -274,7 +274,7 @@ public sealed class PowerCurveTests : IDisposable var goodEnergy = new PerformanceStat { Min = 1, Max = 1, Terms = { new StatTerm { Source = StatSource.PowerSupply, Exponent = 1 } } }; using (var cache = AetheriaStores.Open(Catalog, catalogWritable: true)) { - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.UpsertAsync(new GearData { Name = "CurvedThruster", Hardpoint = HardpointType.Tool, Shape = new Shape(), Durability = 10, @@ -294,7 +294,7 @@ public sealed class PowerCurveTests : IDisposable { var goodEnergy = new PerformanceStat { Min = 1, Max = 1, Terms = { new StatTerm { Source = StatSource.PowerSupply, Exponent = 1 } } }; using var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(new GearData { @@ -318,7 +318,7 @@ public sealed class PowerCurveTests : IDisposable { var curvedPumpedHeat = new PerformanceStat { Min = 1000, Max = 4000, Terms = { new StatTerm { Source = StatSource.PowerSupply, Exponent = 1 } } }; using var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(new GearData { @@ -342,7 +342,7 @@ public sealed class PowerCurveTests : IDisposable { var curvedRefillDuration = new PerformanceStat { Min = 2, Max = 2, Terms = { new StatTerm { Source = StatSource.PowerSupply, Exponent = 1 } } }; using var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(new GearData { @@ -376,7 +376,7 @@ public sealed class PowerCurveTests : IDisposable }; using var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(3, 3); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData diff --git a/tests/Aetheria.Shared.Tests/PowerTierTests.cs b/tests/Aetheria.Shared.Tests/PowerTierTests.cs index 50f16b530..256b9bb26 100644 --- a/tests/Aetheria.Shared.Tests/PowerTierTests.cs +++ b/tests/Aetheria.Shared.Tests/PowerTierTests.cs @@ -36,7 +36,7 @@ public sealed class PowerTierTests : IDisposable private CultCache OpenCatalog() { var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(5, 5); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData { Name = "Skiff", HullType = HullType.Ship, Shape = hullShape, Durability = 10, Mass = 1000 }); diff --git a/tests/Aetheria.Shared.Tests/RolesBackfillCommandTests.cs b/tests/Aetheria.Shared.Tests/RolesBackfillCommandTests.cs index 034ce7455..d691f8061 100644 --- a/tests/Aetheria.Shared.Tests/RolesBackfillCommandTests.cs +++ b/tests/Aetheria.Shared.Tests/RolesBackfillCommandTests.cs @@ -88,7 +88,7 @@ public sealed class RolesBackfillCommandTests : IDisposable using (var plain = new CultCache()) { plain.AddBackingStore(new SingleFileMessagePackBackingStore(CatalogPath), AetheriaStores.CatalogTypes); - plain.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + plain.Upsert(new VerseGrammar { Revision = 1 }); plain.FlushAsync().Wait(); } } diff --git a/tests/Aetheria.Shared.Tests/RunSaveTests.cs b/tests/Aetheria.Shared.Tests/RunSaveTests.cs index b0eb4dd71..20a7f2ba5 100644 --- a/tests/Aetheria.Shared.Tests/RunSaveTests.cs +++ b/tests/Aetheria.Shared.Tests/RunSaveTests.cs @@ -23,7 +23,7 @@ public sealed class RunSaveTests : IDisposable using var cache = AetheriaStores.Open(Catalog, catalogWritable: true); cache.Commit(batch => { - batch.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + batch.Upsert(new VerseGrammar { Revision = 1 }); batch.Upsert(new Faction { Name = "Adrasteia", ShortName = "ADR" }); }); } diff --git a/tests/Aetheria.Shared.Tests/ShieldReserveTests.cs b/tests/Aetheria.Shared.Tests/ShieldReserveTests.cs index 9c3afb11b..58f0654d9 100644 --- a/tests/Aetheria.Shared.Tests/ShieldReserveTests.cs +++ b/tests/Aetheria.Shared.Tests/ShieldReserveTests.cs @@ -46,7 +46,7 @@ public sealed class ShieldReserveTests : IDisposable private CultCache OpenCatalog() { var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(5, 5); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData { Name = "Skiff", HullType = HullType.Ship, Shape = hullShape, Durability = 10, Mass = 1000 }); diff --git a/tests/Aetheria.Shared.Tests/ShipModCatalogTests.cs b/tests/Aetheria.Shared.Tests/ShipModCatalogTests.cs index a2426906b..3b1c0abe3 100644 --- a/tests/Aetheria.Shared.Tests/ShipModCatalogTests.cs +++ b/tests/Aetheria.Shared.Tests/ShipModCatalogTests.cs @@ -21,8 +21,8 @@ public sealed class ShipModCatalogTests : IDisposable { Directory.CreateDirectory(Mods); using var cache = AetheriaStores.Open(Shipped, catalogWritable: true); - // The test assembly registers TestCatalogGlobal (AetheriaStoresTests), so any populated catalog must hold one. - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + // A populated catalog must hold the VerseGrammar global. + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(new HullData { Name = "Wasp", Shape = ShipAuthoringTests.Fixture().Hull.Shape }); cache.Upsert(new GearData { Name = "Widget" }); cache.FlushAsync().Wait(); diff --git a/tests/Aetheria.Shared.Tests/StatResolverTests.cs b/tests/Aetheria.Shared.Tests/StatResolverTests.cs index 0c0283f20..c0b645f90 100644 --- a/tests/Aetheria.Shared.Tests/StatResolverTests.cs +++ b/tests/Aetheria.Shared.Tests/StatResolverTests.cs @@ -33,7 +33,7 @@ public sealed class StatResolverTests : IDisposable private CultCache OpenCatalog(CapacitorData capacitor, StatModifierData modifier = null) { var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(3, 3); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData @@ -267,7 +267,7 @@ public sealed class StatResolverTests : IDisposable Type = StatModifierType.Constant }; using var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(3, 3); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData diff --git a/tests/Aetheria.Shared.Tests/StationServicesTests.cs b/tests/Aetheria.Shared.Tests/StationServicesTests.cs index 587f3ee66..21a478699 100644 --- a/tests/Aetheria.Shared.Tests/StationServicesTests.cs +++ b/tests/Aetheria.Shared.Tests/StationServicesTests.cs @@ -19,7 +19,7 @@ public sealed class StationServicesTests : IDisposable { Directory.CreateDirectory(_root); _cache = AetheriaStores.Open(Path.Combine(_root, "Aetheria.cc"), catalogWritable: true); - _cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + _cache.Upsert(new VerseGrammar { Revision = 1 }); var shape = new Shape(5, 5); foreach (var cell in shape.AllCoordinates) shape[cell] = true; var hardpoint = new HardpointData { Type = HardpointType.Sensors, Position = new int2(0, 0), Shape = new Shape() }; diff --git a/tests/Aetheria.Shared.Tests/TargetingSystemTests.cs b/tests/Aetheria.Shared.Tests/TargetingSystemTests.cs index bc6af3597..b621f7b87 100644 --- a/tests/Aetheria.Shared.Tests/TargetingSystemTests.cs +++ b/tests/Aetheria.Shared.Tests/TargetingSystemTests.cs @@ -69,7 +69,7 @@ public sealed class TargetingSystemTests : IDisposable using (var buildCache = AetheriaStores.Open(Catalog, catalogWritable: true)) { - buildCache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + buildCache.Upsert(new VerseGrammar { Revision = 1 }); buildCache.Upsert(hullData); buildCache.Upsert(new GearData { @@ -303,7 +303,7 @@ public sealed class TargetingSystemTests : IDisposable public void StarvedTargetingRollsWorse() { using var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(5, 5); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData { Name = "Skiff", HullType = HullType.Ship, Shape = hullShape, Durability = 10, Mass = 1000 }); @@ -378,7 +378,7 @@ public sealed class TargetingSystemTests : IDisposable public void EveryArmedLoadoutGetsATargetingSystem() { using var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var maker = cache.Upsert(new Faction { Name = "Maker", ShortName = "MKR" }); var hullShape = new Shape(5, 5); diff --git a/tests/Aetheria.Shared.Tests/ThrottleLockTests.cs b/tests/Aetheria.Shared.Tests/ThrottleLockTests.cs index 3f6109155..2e44ea87f 100644 --- a/tests/Aetheria.Shared.Tests/ThrottleLockTests.cs +++ b/tests/Aetheria.Shared.Tests/ThrottleLockTests.cs @@ -57,7 +57,7 @@ public sealed class ThrottleLockTests : IDisposable private Fixture Build(float lockDuration) { var cache = AetheriaStores.Open(Catalog, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); var hullShape = new Shape(5, 5); foreach (var cell in hullShape.AllCoordinates) hullShape[cell] = true; cache.Upsert(new HullData { Name = "Skiff", HullType = HullType.Ship, Shape = hullShape, Durability = 10, Mass = 1000 }); diff --git a/tests/Aetheria.Shared.Tests/VapourCloudTests.cs b/tests/Aetheria.Shared.Tests/VapourCloudTests.cs index 71fc3cc2a..372e2585c 100644 --- a/tests/Aetheria.Shared.Tests/VapourCloudTests.cs +++ b/tests/Aetheria.Shared.Tests/VapourCloudTests.cs @@ -69,7 +69,7 @@ public sealed class VapourCloudTests : IDisposable }; var cache = AetheriaStores.Open(Path.Combine(_root, Guid.NewGuid().ToString("N") + ".cc"), catalogWritable: true); _caches.Add(cache); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); + cache.Upsert(new VerseGrammar { Revision = 1 }); cache.Upsert(new HullData { Name = "Hull", HullType = HullType.Ship, Shape = Solid(5, 5), Durability = 1000000, Mass = 1000, diff --git a/tests/Aetheria.Shared.Tests/VerseGrammarTests.cs b/tests/Aetheria.Shared.Tests/VerseGrammarTests.cs index 642f66e27..bd9f4b1d7 100644 --- a/tests/Aetheria.Shared.Tests/VerseGrammarTests.cs +++ b/tests/Aetheria.Shared.Tests/VerseGrammarTests.cs @@ -36,13 +36,11 @@ public sealed class VerseGrammarTests : IDisposable Roles = new[] { new VerseRole { Name = "site", Binds = VerseReferentKind.Place }, new VerseRole { Name = "load", Binds = VerseReferentKind.Cargo } }, }; - // A catalog authored through AetheriaStores.Open; TestCatalogGlobal is the record the shared registry in this test host - // demands (see AetheriaStoresTests). + // A catalog authored through AetheriaStores.Open; a null grammar leaves the catalog without its global. private string Author(string name, VerseGrammar grammar, params VerseVerb[] verbs) { var path = PathOf(name); using var cache = AetheriaStores.Open(path, catalogWritable: true); - cache.Upsert(new TestCatalogGlobal { Name = "Temperament" }); if (grammar != null) cache.Upsert(grammar); foreach (var verb in verbs) cache.Upsert(verb); cache.FlushAsync().Wait(); @@ -143,7 +141,7 @@ public sealed class VerseGrammarTests : IDisposable // A scratch root holding a copy of the shipped catalog with its verse grammar removed: the catalog as it was before the // command ran. The catalog is stripped and read through a registry scoped to the shipped assembly, as - // PiratesFactionCommandTests does, so the test assembly's TestCatalogGlobal does not poison it. + // PiratesFactionCommandTests does. private string RootWithoutGrammar(params VerseVerb[] preexisting) { var gameData = Path.Combine(_root, "cmd", "GameData");