public void Dispatcher_Handle_Any() { var container = Container.Create(); container.Register <CustomAnyEventHandler>(Scope.Singleton); container.Register <DummyContractInvoker>(Scope.Singleton); container.RegisterEvent <CustomContractArgs>(); var invoker = container.Resolve <DummyContractInvoker>(); var eventHandler = container.Resolve <CustomAnyEventHandler>(); var expectedValue = new CustomContractArgs { flag = true, id = 9, name = "shine" }; var expectedEventType = typeof(CustomContractArgs); invoker.RaiseEvent(expectedValue); var actualValue = eventHandler.ReceivedArgs; var actualEventType = eventHandler.EventType; Assert.Multiple(() => { Assert.AreEqual(expectedValue, actualValue); Assert.AreEqual(expectedEventType, actualEventType); }); }
public void Dispatcher_Send_Singleton_Contract() { var container = Container.Create(); container.Register <CustomContractHandler>(Scope.Singleton); container.Register <DummyContractInvoker>(Scope.Singleton); container.RegisterEvent <CustomContractArgs>(); var invoker = container.Resolve <DummyContractInvoker>(); var eventHandler = container.Resolve <CustomContractHandler>(); var expectedValue = new CustomContractArgs { flag = true, id = 9, name = "shine" }; invoker.RaiseEvent(expectedValue); var actualValue = eventHandler.ReceivedArgs; Assert.AreEqual(expectedValue, actualValue); }
public void RaiseEvent(CustomContractArgs eventArgs) { dispatcher.Send(eventArgs); }