Exemple #1
0
        public void PushInactiveGameObject()
        {
            UnityEventListenerMock elementOnePushedMock      = new UnityEventListenerMock();
            UnityEventListenerMock elementOnePoppedMock      = new UnityEventListenerMock();
            UnityEventListenerMock elementOneForcePoppedMock = new UnityEventListenerMock();

            GameObjectEventStack.ElementEvents eventsOne = new GameObjectEventStack.ElementEvents();
            eventsOne.Pushed.AddListener(elementOnePushedMock.Listen);
            eventsOne.Popped.AddListener(elementOnePoppedMock.Listen);
            eventsOne.ForcePopped.AddListener(elementOneForcePoppedMock.Listen);

            GameObject objectOne = new GameObject();

            subject.elementEvents.Add(eventsOne);
            subject.gameObject.SetActive(false);
            subject.Push(objectOne);

            Assert.IsFalse(elementOnePushedMock.Received);
            Assert.IsFalse(elementOnePoppedMock.Received);
            Assert.IsFalse(elementOneForcePoppedMock.Received);

            Object.DestroyImmediate(objectOne);
        }
Exemple #2
0
        public void PopAtIndexAlreadyPopped()
        {
            UnityEventListenerMock elementOnePushedMock      = new UnityEventListenerMock();
            UnityEventListenerMock elementOnePoppedMock      = new UnityEventListenerMock();
            UnityEventListenerMock elementOneForcePoppedMock = new UnityEventListenerMock();

            GameObjectEventStack.ElementEvents eventsOne = new GameObjectEventStack.ElementEvents();
            eventsOne.Pushed.AddListener(elementOnePushedMock.Listen);
            eventsOne.Popped.AddListener(elementOnePoppedMock.Listen);
            eventsOne.ForcePopped.AddListener(elementOneForcePoppedMock.Listen);

            UnityEventListenerMock elementTwoPushedMock      = new UnityEventListenerMock();
            UnityEventListenerMock elementTwoPoppedMock      = new UnityEventListenerMock();
            UnityEventListenerMock elementTwoForcePoppedMock = new UnityEventListenerMock();

            GameObjectEventStack.ElementEvents eventsTwo = new GameObjectEventStack.ElementEvents();
            eventsTwo.Pushed.AddListener(elementTwoPushedMock.Listen);
            eventsTwo.Popped.AddListener(elementTwoPoppedMock.Listen);
            eventsTwo.ForcePopped.AddListener(elementTwoForcePoppedMock.Listen);

            UnityEventListenerMock elementThreePushedMock      = new UnityEventListenerMock();
            UnityEventListenerMock elementThreePoppedMock      = new UnityEventListenerMock();
            UnityEventListenerMock elementThreeForcePoppedMock = new UnityEventListenerMock();

            GameObjectEventStack.ElementEvents eventsThree = new GameObjectEventStack.ElementEvents();
            eventsThree.Pushed.AddListener(elementThreePushedMock.Listen);
            eventsThree.Popped.AddListener(elementThreePoppedMock.Listen);
            eventsThree.ForcePopped.AddListener(elementThreeForcePoppedMock.Listen);

            GameObject objectOne   = new GameObject();
            GameObject objectTwo   = new GameObject();
            GameObject objectThree = new GameObject();

            subject.elementEvents.Add(eventsOne);
            subject.elementEvents.Add(eventsTwo);
            subject.elementEvents.Add(eventsThree);

            subject.Push(objectOne);
            subject.Push(objectTwo);
            subject.Push(objectThree);

            subject.PopAt(objectTwo);

            elementOnePushedMock.Reset();
            elementOnePoppedMock.Reset();
            elementOneForcePoppedMock.Reset();
            elementTwoPushedMock.Reset();
            elementTwoPoppedMock.Reset();
            elementTwoForcePoppedMock.Reset();
            elementThreePushedMock.Reset();
            elementThreePoppedMock.Reset();
            elementThreeForcePoppedMock.Reset();

            Assert.IsFalse(elementOnePushedMock.Received);
            Assert.IsFalse(elementOnePoppedMock.Received);
            Assert.IsFalse(elementOneForcePoppedMock.Received);
            Assert.IsFalse(elementTwoPushedMock.Received);
            Assert.IsFalse(elementTwoPoppedMock.Received);
            Assert.IsFalse(elementTwoForcePoppedMock.Received);
            Assert.IsFalse(elementThreePushedMock.Received);
            Assert.IsFalse(elementThreePoppedMock.Received);
            Assert.IsFalse(elementThreeForcePoppedMock.Received);

            subject.PopAt(1);

            Assert.IsFalse(elementOnePushedMock.Received);
            Assert.IsFalse(elementOnePoppedMock.Received);
            Assert.IsFalse(elementOneForcePoppedMock.Received);
            Assert.IsFalse(elementTwoPushedMock.Received);
            Assert.IsFalse(elementTwoPoppedMock.Received);
            Assert.IsFalse(elementTwoForcePoppedMock.Received);
            Assert.IsFalse(elementThreePushedMock.Received);
            Assert.IsFalse(elementThreePoppedMock.Received);
            Assert.IsFalse(elementThreeForcePoppedMock.Received);

            Object.DestroyImmediate(objectOne);
            Object.DestroyImmediate(objectTwo);
            Object.DestroyImmediate(objectThree);
        }