mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-23 03:04:29 +08:00
- 为 ContextAware 功能添加全面的单元测试覆盖 - 增加对枚举扩展生成器的快照测试验证 - 实现环境管理器的完整测试用例集 - 添加事件总线功能的核心测试验证 - 为游戏上下文管理添加架构测试 - 扩展注销列表扩展方法的测试覆盖 - 增加注销机制的全面单元测试验证 - [skip ci]
61 lines
1.4 KiB
C#
61 lines
1.4 KiB
C#
using GFramework.Core.events;
|
|
using NUnit.Framework;
|
|
|
|
namespace GFramework.Core.Tests.events;
|
|
|
|
[TestFixture]
|
|
public class EventBusTests
|
|
{
|
|
[SetUp]
|
|
public void SetUp()
|
|
{
|
|
_eventBus = new EventBus();
|
|
}
|
|
|
|
private EventBus _eventBus = null!;
|
|
|
|
[Test]
|
|
public void Register_Should_Add_Handler()
|
|
{
|
|
var called = false;
|
|
_eventBus.Register<EventBusTestsEvent>(@event => { called = true; });
|
|
|
|
_eventBus.Send<EventBusTestsEvent>();
|
|
|
|
Assert.That(called, Is.True);
|
|
}
|
|
|
|
[Test]
|
|
public void UnRegister_Should_Remove_Handler()
|
|
{
|
|
var count = 0;
|
|
|
|
Action<EventBusTestsEvent> handler = @event => { count++; };
|
|
_eventBus.Register(handler);
|
|
_eventBus.Send<EventBusTestsEvent>();
|
|
Assert.That(count, Is.EqualTo(1));
|
|
|
|
_eventBus.UnRegister(handler);
|
|
_eventBus.Send<EventBusTestsEvent>();
|
|
Assert.That(count, Is.EqualTo(1));
|
|
}
|
|
|
|
[Test]
|
|
public void SendEvent_Should_Invoke_All_Handlers()
|
|
{
|
|
var count1 = 0;
|
|
var count2 = 0;
|
|
|
|
_eventBus.Register<EventBusTestsEvent>(@event => { count1++; });
|
|
_eventBus.Register<EventBusTestsEvent>(@event => { count2++; });
|
|
|
|
_eventBus.Send<EventBusTestsEvent>();
|
|
|
|
Assert.That(count1, Is.EqualTo(1));
|
|
Assert.That(count2, Is.EqualTo(1));
|
|
}
|
|
}
|
|
|
|
public class EventBusTestsEvent
|
|
{
|
|
} |