Пример #1
0
        public void Complete_IncompleteCondition_False()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var condition = new TestActionStateCondition();

            conditionRunner.AddCondition(condition);

            Assert.IsFalse(conditionRunner.IsComplete());
        }
Пример #2
0
        public void AddActionStateCondition_CallsStartIfOneTrack()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var condition = new TestActionStateCondition();

            conditionRunner.AddCondition(condition);

            Assert.IsTrue(condition.StartCalled);
        }
Пример #3
0
        public void Update_ConditionDoesNotComplete_CompleteFalse()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var condition = new TestActionStateCondition();

            conditionRunner.AddCondition(condition);
            conditionRunner.Update(1.0f);

            Assert.IsFalse(conditionRunner.IsComplete());
        }
Пример #4
0
        public void AddActionStateCondition_DoesNotCallStartIfNotOnRunningTrack()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var condition = new TestActionStateCondition();

            conditionRunner.PushNewTrack();
            conditionRunner.AddCondition(condition);

            Assert.IsFalse(condition.StartCalled);
        }
Пример #5
0
        public void ConditionCompletes_NeedsUpdateToCallEnd()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var condition = new TestActionStateCondition();

            conditionRunner.AddCondition(condition);
            condition.ForceComplete();

            Assert.AreEqual(0, condition.EndCalls);
        }
Пример #6
0
        public void ConditionCompletes_NeedsUpdateToBeNotified()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var condition = new TestActionStateCondition();

            conditionRunner.AddCondition(condition);
            condition.ForceComplete();

            Assert.IsFalse(conditionRunner.IsComplete());
        }
Пример #7
0
        public void Update_ConditionDoesComplete_CallsEnd()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var condition = new TestActionStateCondition();

            conditionRunner.AddCondition(condition);
            condition.ForceComplete();
            conditionRunner.Update(1.0f);

            Assert.AreEqual(1, condition.EndCalls);
        }
Пример #8
0
        public void Update_CallsUpdateWithFloat()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var         condition = new TestActionStateCondition();
            const float deltaTime = 12.0f;

            conditionRunner.AddCondition(condition);
            conditionRunner.Update(deltaTime);

            Assert.IsTrue(condition.UpdateCalled);
            Assert.AreEqual(deltaTime, condition.UpdateDelta);
        }
Пример #9
0
        public void Update_NeedsAllConditionsToComplete()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var firstCondition  = new TestActionStateCondition();
            var secondCondition = new TestActionStateCondition();

            conditionRunner.AddCondition(firstCondition);
            conditionRunner.AddCondition(secondCondition);
            firstCondition.ForceComplete();

            conditionRunner.Update(1.0f);

            Assert.IsFalse(conditionRunner.IsComplete());
        }
Пример #10
0
        public void Update_CallsStartOnConditionsOnceTheirTrackIsRunning()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var firstCondition  = new TestActionStateCondition();
            var secondCondition = new TestActionStateCondition();

            conditionRunner.AddCondition(firstCondition);
            conditionRunner.PushNewTrack();
            conditionRunner.AddCondition(secondCondition);
            firstCondition.ForceComplete();
            conditionRunner.Update(1.0f);
            conditionRunner.Update(1.0f);

            Assert.IsTrue(secondCondition.StartCalled);
        }
Пример #11
0
        public void Update_OnlyEndsConditionOnceOnCompletion()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var firstCondition  = new TestActionStateCondition();
            var secondCondition = new TestActionStateCondition();

            conditionRunner.AddCondition(firstCondition);
            conditionRunner.AddCondition(secondCondition);
            firstCondition.ForceComplete();

            conditionRunner.Update(1.0f);
            conditionRunner.Update(1.0f);

            Assert.AreEqual(1, firstCondition.EndCalls);
        }
Пример #12
0
        public void PushNewTrack_DoesNotUpdateNewTrackUntilPriorComplete()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var firstCondition  = new TestActionStateCondition();
            var secondCondition = new TestActionStateCondition();

            conditionRunner.AddCondition(firstCondition);
            conditionRunner.PushNewTrack();
            conditionRunner.AddCondition(secondCondition);
            firstCondition.ForceComplete();
            secondCondition.ForceComplete();

            conditionRunner.Update(1.0f);

            Assert.IsFalse(conditionRunner.IsComplete());
        }
Пример #13
0
        public void PushNewTrack_UpdateAfterPriorCompletesTrack()
        {
            var conditionRunner = new ActionStateConditionRunner();

            var firstCondition  = new TestActionStateCondition();
            var secondCondition = new TestActionStateCondition();

            conditionRunner.AddCondition(firstCondition);
            conditionRunner.PushNewTrack();
            conditionRunner.AddCondition(secondCondition);
            firstCondition.ForceComplete();
            secondCondition.ForceComplete();

            conditionRunner.Update(1.0f);
            conditionRunner.Update(1.0f);

            Assert.IsTrue(conditionRunner.IsComplete());
        }
Пример #14
0
 public DeadActionState(ActionStateInfo inInfo, DeadActionStateParams inParams)
     : base(EActionStateId.Dead, inInfo)
 {
     _conditionRunner = new ActionStateConditionRunner();
     _params          = inParams;
 }
Пример #15
0
        public void Complete_NoConditions_False()
        {
            var conditionRunner = new ActionStateConditionRunner();

            Assert.IsFalse(conditionRunner.IsComplete());
        }