public void RegisterStaticAndNonStatic() { // Static bool wasStaticCalled = false; EventHandlerStatic.s_OnStaticHandlerCalled = packet => { wasStaticCalled = true; Assert.Equal(m_Packet, packet); }; m_Dispatcher.RegisterPacketHandlers(typeof(EventHandlerStatic)); // Non-static bool wasNonStaticCalled = false; EventHandlerNonStatic eventHandler = new EventHandlerNonStatic(); eventHandler.OnHandlerCalled = packet => { wasNonStaticCalled = true; Assert.Equal(m_Packet, packet); }; m_Dispatcher.RegisterPacketHandlers(eventHandler); m_Dispatcher.Dispatch(EConnectionState.Disconnected, m_Packet); Assert.True(wasStaticCalled); Assert.True(wasNonStaticCalled); }
public void DuplicateNonStaticRegistrationFails() { EventHandlerNonStatic eventHandler = new EventHandlerNonStatic(); m_Dispatcher.RegisterPacketHandlers(eventHandler); Assert.Throws <DuplicatePacketHandlerRegistration>( () => m_Dispatcher.RegisterPacketHandlers(eventHandler)); }
public void NonStaticHandlerRegister() { bool wasCalled = false; EventHandlerNonStatic eventHandler = new EventHandlerNonStatic(); eventHandler.OnHandlerCalled = packet => { wasCalled = true; Assert.Equal(m_Packet, packet); }; m_Dispatcher.RegisterPacketHandlers(eventHandler); m_Dispatcher.Dispatch(EConnectionState.Disconnected, m_Packet); Assert.True(wasCalled); }