using System.Threading.Tasks; using Util.Events.Tests.Samples; using Xunit; namespace Util.Events.Tests.Local; /// /// 事件总线测试 /// public class EventBusTest { /// /// 事件总线 /// private readonly IEventBus _eventBus; /// /// 测试初始化 /// public EventBusTest( IEventBus eventBus ) { _eventBus = eventBus; } /// /// 测试发布事件 /// [Fact] public async Task TestPublishAsync() { var @event = new EventSample { Value = "a" }; await _eventBus.PublishAsync( @event ); Assert.Equal( "1:a", @event.Result ); } /// /// 测试发布事件 - 测试排序 - 未设置序号 /// [Fact] public async Task TestPublishAsync_Order_1() { var @event = new EventSample2(); await _eventBus.PublishAsync( @event ); Assert.Equal( "23", @event.Result ); } /// /// 测试发布事件 - 测试排序 - 设置序号 /// [Fact] public async Task TestPublishAsync_Order_2() { var @event = new EventSample3(); await _eventBus.PublishAsync( @event ); Assert.Equal( "54", @event.Result ); } }