GwWuYou 8130cf7fb0 refactor(ioc): 重构依赖注入容器和模型上下文管理
- 将IocContainer的Init方法重命名为OnContextReady并设为protected override
- 重构AbstractModel中的Architecture字段为_context属性并实现IContextAware接口
- 移除GetArchitecture和SetArchitecture方法,添加GetContext和SetContext方法
- 为IModel接口添加IContextAware继承
- 添加TestArchitecture、TestModel和TestSystem测试类
- 创建ArchitectureInitializationTests测试用例验证组件初始化
- 更新项目文件添加NUnit包引用和测试项目配置
- 在解决方案文件中添加测试项目引用
2025-12-29 21:14:23 +08:00

59 lines
1.3 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using GFramework.Core.Abstractions.architecture;
using GFramework.Core.Abstractions.system;
namespace GFramework.Core.Tests.system;
/// <summary>
/// 测试系统类实现了ISystem接口
/// </summary>
public sealed class TestSystem : ISystem
{
/// <summary>
/// 架构上下文对象
/// </summary>
private IArchitectureContext _context = null!;
/// <summary>
/// 获取系统是否已初始化的状态
/// </summary>
public bool Inited { get; private set; }
/// <summary>
/// 获取系统是否已销毁的状态
/// </summary>
public bool Destroyed { get; private set; }
/// <summary>
/// 设置架构上下文
/// </summary>
/// <param name="context">架构上下文对象</param>
public void SetContext(IArchitectureContext context)
{
_context = context;
}
/// <summary>
/// 获取架构上下文
/// </summary>
/// <returns>架构上下文对象</returns>
public IArchitectureContext GetContext()
{
return _context;
}
/// <summary>
/// 初始化系统
/// </summary>
public void Init()
{
Inited = true;
}
/// <summary>
/// 销毁系统
/// </summary>
public void Destroy()
{
Destroyed = true;
}
}