From 8ea462de2850f7fef9605e5e044af870000f906a Mon Sep 17 00:00:00 2001
From: GeWuYou <95328647+GeWuYou@users.noreply.github.com>
Date: Tue, 10 Mar 2026 10:16:04 +0800
Subject: [PATCH] =?UTF-8?q?test(architecture):=20=E6=9B=B4=E6=96=B0?=
=?UTF-8?q?=E6=9E=B6=E6=9E=84=E4=B8=8A=E4=B8=8B=E6=96=87=E6=B5=8B=E8=AF=95?=
=?UTF-8?q?=E4=BB=A5=E9=AA=8C=E8=AF=81=E6=9C=AA=E6=B3=A8=E5=86=8C=E7=BB=84?=
=?UTF-8?q?=E4=BB=B6=E6=8A=9B=E5=87=BA=E5=BC=82=E5=B8=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 修改 GetSystem 方法测试用例,验证未注册系统时抛出 InvalidOperationException
- 修改 GetModel 方法测试用例,验证未注册模型时抛出 InvalidOperationException
- 修改 GetUtility 方法测试用例,验证未注册工具时抛出 InvalidOperationException
- 更新异步架构测试中的系统销毁验证逻辑
- 移除对已销毁系统的空值检查断言,改为验证异步测试系统的销毁状态
---
.../Architecture/ArchitectureContextTests.cs | 33 +++++++++----------
.../Tests/AsyncArchitectureTests.cs | 4 +--
2 files changed, 17 insertions(+), 20 deletions(-)
diff --git a/GFramework.Core.Tests/Architecture/ArchitectureContextTests.cs b/GFramework.Core.Tests/Architecture/ArchitectureContextTests.cs
index d47c1b9..4542e5d 100644
--- a/GFramework.Core.Tests/Architecture/ArchitectureContextTests.cs
+++ b/GFramework.Core.Tests/Architecture/ArchitectureContextTests.cs
@@ -32,11 +32,11 @@ namespace GFramework.Core.Tests.Architecture;
/// - SendEvent_WithInstance方法 - 正常事件发送
/// - SendEvent_WithInstance方法 - 空事件异常
/// - GetSystem方法 - 获取已注册系统
-/// - GetSystem方法 - 获取未注册系统
+/// - GetSystem方法 - 获取未注册系统时抛出异常
/// - GetModel方法 - 获取已注册模型
-/// - GetModel方法 - 获取未注册模型
+/// - GetModel方法 - 获取未注册模型时抛出异常
/// - GetUtility方法 - 获取已注册工具
-/// - GetUtility方法 - 获取未注册工具
+/// - GetUtility方法 - 获取未注册工具时抛出异常
/// - GetEnvironment方法 - 获取环境对象
///
[TestFixture]
@@ -228,14 +228,13 @@ public class ArchitectureContextTests
}
///
- /// 测试GetSystem方法在系统未注册时返回null
+ /// 测试GetSystem方法在系统未注册时应抛出 InvalidOperationException
///
[Test]
- public void GetSystem_Should_ReturnNull_When_SystemIsNotRegistered()
+ public void GetSystem_Should_ThrowInvalidOperationException_When_SystemIsNotRegistered()
{
- var result = _context!.GetSystem();
-
- Assert.That(result, Is.Null);
+ Assert.That(() => _context!.GetSystem(),
+ Throws.InvalidOperationException);
}
///
@@ -254,14 +253,13 @@ public class ArchitectureContextTests
}
///
- /// 测试GetModel方法在模型未注册时返回null
+ /// 测试GetModel方法在模型未注册时应抛出 InvalidOperationException
///
[Test]
- public void GetModel_Should_ReturnNull_When_ModelIsNotRegistered()
+ public void GetModel_Should_ThrowInvalidOperationException_When_ModelIsNotRegistered()
{
- var result = _context!.GetModel();
-
- Assert.That(result, Is.Null);
+ Assert.That(() => _context!.GetModel(),
+ Throws.InvalidOperationException);
}
///
@@ -280,14 +278,13 @@ public class ArchitectureContextTests
}
///
- /// 测试GetUtility方法在工具未注册时返回null
+ /// 测试GetUtility方法在工具未注册时应抛出 InvalidOperationException
///
[Test]
- public void GetUtility_Should_ReturnNull_When_UtilityIsNotRegistered()
+ public void GetUtility_Should_ThrowInvalidOperationException_When_UtilityIsNotRegistered()
{
- var result = _context!.GetUtility();
-
- Assert.That(result, Is.Null);
+ Assert.That(() => _context!.GetUtility(),
+ Throws.InvalidOperationException);
}
///
diff --git a/GFramework.Core.Tests/Tests/AsyncArchitectureTests.cs b/GFramework.Core.Tests/Tests/AsyncArchitectureTests.cs
index f49b1f5..bd689fc 100644
--- a/GFramework.Core.Tests/Tests/AsyncArchitectureTests.cs
+++ b/GFramework.Core.Tests/Tests/AsyncArchitectureTests.cs
@@ -111,8 +111,8 @@ public class AsyncArchitectureTests : ArchitectureTestsBase();
- Assert.That(system, Is.Null);
+ var system = Architecture.Context.GetSystem();
+ Assert.That(system!.DestroyCalled, Is.True);
Assert.That(Architecture.CurrentPhase, Is.EqualTo(ArchitecturePhase.Destroyed));
}