public void Data_SameCallbackCanBeAddedTwice() { Events.SubscribeToEvent(callbacks.AData, EventType.A); Events.SubscribeToEvent(callbacks.AData, EventType.A); Events.FireEvent(EventType.A, CallbackData.String("a")); Assert.AreEqual(2, callbacks.a, "Event callback was not called 2 times"); }
public void Data_ResetWorks() { Events.SubscribeToEvent(callbacks.AData, EventType.A); Events.Reset(); Events.FireEvent(EventType.A, CallbackData.String("a")); Assert.AreEqual(0, callbacks.a, "Event callback was called"); Assert.AreEqual(null, dataString, "Was called"); }
public void Data_CallbackSupportMultipleCallbacks() { Events.SubscribeToEvent(callbacks.AData, EventType.A); Events.SubscribeToEvent(callbacks.BData, EventType.A); Events.FireEvent(EventType.A, CallbackData.String("a")); Assert.AreEqual(1, callbacks.a, "Event callback A was not called"); Assert.AreEqual(1, callbacks.b, "Event callback B was not called"); Assert.AreEqual("a", dataString); }
public void Data_SubscriptionsCanBeOverwritten() { Events.SubscribeToEvent(callbacks.AData, EventType.A); Events.SubscribeToEvent(callbacks.AData, EventType.A); Events.OverrideSubscription(callbacks.BData, EventType.A); Events.FireEvent(EventType.A, CallbackData.String("a")); Assert.AreEqual(0, callbacks.a, "Event callback was not overridden"); Assert.AreEqual(1, callbacks.b, "Overriding callback was not called"); }
public void Data_OnlyMatchingCallbacksAreRemoved() { Events.SubscribeToEvent(callbacks.AData, EventType.A); Events.SubscribeToEvent(callbacks.BData, EventType.A); Events.UnsubscribeFromEvent(callbacks.AData, EventType.A); Events.FireEvent(EventType.A, CallbackData.String("a")); Assert.AreEqual(0, callbacks.a, "Event callback was called"); Assert.AreEqual(1, callbacks.b, "Event callback was not called"); Assert.AreEqual("a", dataString, "Data was not transmitted succesfully"); }
public void Data_CallbacksAreCalled() { Events.SubscribeToEvent(callbacks.AData, EventType.A); Events.SubscribeToEvent(callbacks.BData, EventType.B); Events.SubscribeToEvent(callbacks.CData, EventType.C); Events.FireEvent(EventType.A, CallbackData.String("a")); Events.FireEvent(EventType.B, CallbackData.String("b")); Events.FireEvent(EventType.C, CallbackData.String("c")); Assert.AreEqual(1, callbacks.a, "Event callback was not called"); Assert.AreEqual(1, callbacks.b, "Event callback was not called"); Assert.AreEqual(1, callbacks.c, "Event callback was not called"); Assert.AreEqual(1, a, "Event callback was not called"); Assert.AreEqual(1, b, "Event callback was not called"); Assert.AreEqual(1, c, "Event callback was not called"); Assert.AreEqual("c", dataString, "Data was not transmitted succesfully"); }