using GFramework.Core.Architectures; namespace GFramework.Core.Tests.Architectures; /// /// 为 在架构上下文中暴露 的测试替身。 /// public class TestArchitectureContextWithRegistry : TestArchitectureContext { private readonly TestRegistry _registry; /// /// 使用给定测试注册表创建上下文测试替身。 /// /// 需要通过 返回的测试注册表。 public TestArchitectureContextWithRegistry(TestRegistry registry) { _registry = registry; } /// /// 在请求 时返回测试注册表,其余类型回退到基类实现。 /// /// 请求的工具类型。 /// 匹配时返回测试注册表,否则返回基类结果。 public override TUtility GetUtility() { if (typeof(TUtility) == typeof(TestRegistry)) { return (TUtility)(object)_registry; } return base.GetUtility(); } }