public void DontSendToOneMultipleTimes() { AddAllListeners(); var targets = new List <GameObject> { A.gameObject, A1.gameObject, A11a.gameObject, A12.gameObject }; this.SendEventWithChildren(UnitTestEventType.TestEventType, EventPool.New <AEventData>(), targets); AreEqual(A.Triggered, 1); AreEqual(A1.Triggered, 1); AreEqual(A11a.Triggered, 1); AreEqual(A11b.Triggered, 1); AreEqual(A12.Triggered, 1); AreEqual(A2.Triggered, 1); AreEqual(A21.Triggered, 1); AreEqual(A22.Triggered, 1); AreNotEqual(B.Triggered, 1); AreNotEqual(B1.Triggered, 1); AreNotEqual(B11.Triggered, 1); AreNotEqual(B12.Triggered, 1); AreNotEqual(B2.Triggered, 1); AreNotEqual(B21.Triggered, 1); AreNotEqual(B22.Triggered, 1); RemoveAllListeners(); Reset(); }
public void SendToListWhithoutChildren() { AddAllListeners(); var targets = new List <GameObject> { A1.gameObject, A12.gameObject, B.gameObject, B22.gameObject }; this.SendEvent(UnitTestEventType.TestEventType, EventPool.New <AEventData>(), targets); AreNotEqual(A.Triggered, 1); AreEqual(A1.Triggered, 1); AreNotEqual(A11a.Triggered, 1); AreNotEqual(A11b.Triggered, 1); AreEqual(A12.Triggered, 1); AreNotEqual(A2.Triggered, 1); AreNotEqual(A21.Triggered, 1); AreNotEqual(A22.Triggered, 1); AreEqual(B.Triggered, 1); AreNotEqual(B1.Triggered, 1); AreNotEqual(B11.Triggered, 1); AreNotEqual(B12.Triggered, 1); AreNotEqual(B2.Triggered, 1); AreNotEqual(B21.Triggered, 1); AreEqual(B22.Triggered, 1); RemoveAllListeners(); Reset(); }
public void SendToChildren() { AddAllListeners(); A.SendEventToChildren(UnitTestEventType.TestEventType, EventPool.New <AEventData>()); AreNotEqual(A.Triggered, 1); AreEqual(A1.Triggered, 1); AreEqual(A11a.Triggered, 1); AreEqual(A11b.Triggered, 1); AreEqual(A12.Triggered, 1); AreEqual(A2.Triggered, 1); AreEqual(A21.Triggered, 1); AreEqual(A22.Triggered, 1); AreNotEqual(B.Triggered, 1); AreNotEqual(B1.Triggered, 1); AreNotEqual(B11.Triggered, 1); AreNotEqual(B12.Triggered, 1); AreNotEqual(B2.Triggered, 1); AreNotEqual(B21.Triggered, 1); AreNotEqual(B22.Triggered, 1); RemoveAllListeners(); Reset(); }
public void SendToAll() { AddAllListeners(); this.SendEvent(UnitTestEventType.TestEventType, EventPool.New <AEventData>()); AreEqual(A.Triggered, 1); AreEqual(A1.Triggered, 1); AreEqual(A11a.Triggered, 1); AreEqual(A11b.Triggered, 1); AreEqual(A12.Triggered, 1); AreEqual(A2.Triggered, 1); AreEqual(A21.Triggered, 1); AreEqual(A22.Triggered, 1); AreEqual(B.Triggered, 1); AreEqual(B1.Triggered, 1); AreEqual(B11.Triggered, 1); AreEqual(B12.Triggered, 1); AreEqual(B2.Triggered, 1); AreEqual(B21.Triggered, 1); AreEqual(B22.Triggered, 1); RemoveAllListeners(); AreEqual(EventDispatcher.GetListernerNumber(), 0); Reset(); }
public void TestEventPool() { ListenerEventData le = null; for (int i = 0; i < 3; i++) { le = EventPool.New <ListenerEventData>(); } AreEqual(EventPool.TotalCreated, 3); EventPool.New <ListenerEventData>(); AreEqual(EventPool.TotalCreated, 4); EventPool.Delete(le); EventPool.New <ListenerEventData>(); AreEqual(EventPool.TotalCreated, 4); AEventData ae = null; for (int i = 0; i < 3; i++) { ae = EventPool.New <AEventData>(); } AreEqual(EventPool.TotalCreated, 7); EventPool.New <AEventData>(); AreEqual(EventPool.TotalCreated, 8); EventPool.Delete(ae); EventPool.New <AEventData>(); AreEqual(EventPool.TotalCreated, 8); EventPool.Delete(ae); EventPool.New <AEventData>(); AreEqual(EventPool.TotalCreated, 8); EventPool.Delete(ae); EventPool.New <AEventData>(); AreEqual(EventPool.TotalCreated, 8); }
public void AddListenerDuringSending() { A11a.AddEventListener(UnitTestEventType.TestEventType, A11a.OnEventAddListeners); var listeners = new List <UnitTestEventHandle> { A, B, B11, B22 }; var targets = new List <GameObject> { A.gameObject, B.gameObject }; var e = EventPool.New <ListenerEventData>(); e.Listeners = listeners; this.SendEventWithChildren(UnitTestEventType.TestEventType, e, targets); // will be traversed by order AreNotEqual(A.Triggered, 1); AreNotEqual(A1.Triggered, 1); AreEqual(A11a.Triggered, 1); AreNotEqual(A11b.Triggered, 1); AreNotEqual(A12.Triggered, 1); AreNotEqual(A2.Triggered, 1); AreNotEqual(A21.Triggered, 1); AreNotEqual(A22.Triggered, 1); AreNotEqual(B.Triggered, 1); AreNotEqual(B1.Triggered, 1); AreNotEqual(B11.Triggered, 1); AreNotEqual(B12.Triggered, 1); AreNotEqual(B2.Triggered, 1); AreNotEqual(B21.Triggered, 1); AreNotEqual(B22.Triggered, 1); A11a.RemoveEventListener(UnitTestEventType.TestEventType, A11a.OnEventAddListeners); A.RemoveEventListener(UnitTestEventType.TestEventType, A.OnEvent); B.RemoveEventListener(UnitTestEventType.TestEventType, B.OnEvent); B11.RemoveEventListener(UnitTestEventType.TestEventType, B11.OnEvent); B22.RemoveEventListener(UnitTestEventType.TestEventType, B22.OnEvent); Reset(); }
public void TestState1004To1003() { AreSame(fsm.CurrentState, fsm.State1003); // 检查相关服务起停次数 AreEqual(fsm.ServiceProvider5.EnableTimes, sp5EnabledTimes); AreEqual(fsm.ServiceProvider5.DisableTimes, sp5DisabledTimes); AreEqual(fsm.EventListener5.EnableTimes, el5EnabledTimes); AreEqual(fsm.EventListener5.DisableTimes, el5DisabledTimes); AreEqual(fsm.Evt1001.EnableTimes, evt1001EnabledTimes + 2); AreEqual(fsm.Evt1001.DisableTimes, evt1001DisabledTimes + 1); AreEqual(fsm.Evt1002.EnableTimes, evt1001EnabledTimes + 2); AreEqual(fsm.Evt1002.DisableTimes, evt1001DisabledTimes + 1); // 检查服务启用状况 IsTrue(fsm.ServiceProvider5.IsEnabled); IsTrue(fsm.EventListener5.IsEnabled); IsTrue(fsm.Evt1001.IsEnabled); IsTrue(fsm.Evt1002.IsEnabled); this.SendEvent(fsm.Evt1002.EventType, EventPool.New <TestEventData>()); }
public void SendToSingleWhithChildren() { AddAllListeners(); this.SendEventWithChildren(UnitTestEventType.TestEventType, EventPool.New <AEventData>(), A.gameObject); AreEqual(A.Triggered, 1); AreEqual(A1.Triggered, 1); AreEqual(A11a.Triggered, 1); AreEqual(A11b.Triggered, 1); AreEqual(A12.Triggered, 1); AreEqual(A2.Triggered, 1); AreEqual(A21.Triggered, 1); AreEqual(A22.Triggered, 1); AreNotEqual(B.Triggered, 1); AreNotEqual(B1.Triggered, 1); AreNotEqual(B11.Triggered, 1); AreNotEqual(B12.Triggered, 1); AreNotEqual(B2.Triggered, 1); AreNotEqual(B21.Triggered, 1); AreNotEqual(B22.Triggered, 1); RemoveAllListeners(); Reset(); }
public void TestState1011To1010() { AreSame(fsm.CurrentState, fsm.State1010); this.SendEvent(fsm.Evt1001.EventType, EventPool.New <TestEventData>()); // 测试 Evt1001 在第二个连线上重复使用 }
public void State1003To1004() { AreSame(fsm.CurrentState, fsm.State1003); this.SendEvent(fsm.Evt1001.EventType, EventPool.New <TestEventData>()); }