using NeonSprawl.Server.Game.Contracts; namespace NeonSprawl.Server.Tests.Game.Contracts; internal static class ContractCatalogTestPaths { internal static string DiscoverRepoContractsDirectory() => ContractCatalogPathResolution.TryDiscoverContractsDirectory(AppContext.BaseDirectory) ?? throw new InvalidOperationException( "Could not discover repo content/contracts from AppContext.BaseDirectory; run tests from the neon-sprawl clone."); internal static string DiscoverRepoContractTemplateSchemaPath() => ContractCatalogPathResolution.ResolveContractTemplateSchemaPath( DiscoverRepoContractsDirectory(), configuredSchemaPath: null, contentRootPath: string.Empty); internal static string DiscoverRepoRewardGrantRowSchemaPath() => ContractCatalogPathResolution.ResolveRewardGrantRowSchemaPath(DiscoverRepoContractsDirectory()); internal static string DiscoverRepoQuestSkillXpGrantSchemaPath() => ContractCatalogPathResolution.ResolveQuestSkillXpGrantSchemaPath(DiscoverRepoContractsDirectory()); internal static string DiscoverRepoQuestRewardBundleSchemaPath() => ContractCatalogPathResolution.ResolveQuestRewardBundleSchemaPath(DiscoverRepoContractsDirectory()); internal static string DiscoverRepoFactionGateRuleSchemaPath() => ContractCatalogPathResolution.ResolveFactionGateRuleSchemaPath(DiscoverRepoContractsDirectory()); internal static string DiscoverRepoReputationGrantRowSchemaPath() => ContractCatalogPathResolution.ResolveReputationGrantRowSchemaPath(DiscoverRepoContractsDirectory()); }