public void When_Debugger_Disabled_then_Logs_not_Received()
        {
            BehaviourDebugger.DisableDebugger();
            var modelSequence = new ModelOfAction <MyAction>(null);
            var executor      = BTExecutorFactory.CreateBTExecutor(modelSequence);

            Assert.DoesNotThrow(delegate
            {
                executor.Tick();
                executor.Tick();
            });

            mockDebugger.Verify(m => m.LogTick(It.IsAny <MyAction>()), Times.Never);
        }
        public void When_Debugger_is_null_then_does_not_throw()
        {
            BehaviourDebugger.SetActiveDebugger(null);
            var modelSequence = new ModelOfAction<MyAction>(null);
            var executor = BTExecutorFactory.CreateBTExecutor(modelSequence);

            Assert.DoesNotThrow(delegate
            {
                executor.Tick();
                executor.Tick();
            });

            mockDebugger.Verify(m => m.LogTick(It.IsAny<MyAction>()), Times.Never);
        }
        public void When_Ticked_then_Guard_Logs_Tick_with_Debugger()
        {
            var guard = new ModelOfAction <MyAction>(null);

            var modelSequence = new ModelDynamicPriorityList(null,
                                                             new ModelOfAction <MyAction>(guard),
                                                             new ModelOfAction <MyAction>(null));
            var executor = BTExecutorFactory.CreateBTExecutor(modelSequence);

            executor.Tick();
            mockDebugger.ResetCalls();
            guard.Action.ReturnStatusForInternalTick = Status.Success;
            executor.Tick();
            mockDebugger.Verify(m => m.LogTick(It.Is((ExecutionTask task) => task.ModelTask == guard)), Times.Exactly(1));
        }
        public void When_Ticked_then_Guard_Logs_Tick_with_Debugger()
        {
            var guard = new ModelOfAction<MyAction>(null);

            var modelSequence = new ModelDynamicPriorityList(null,
                new ModelOfAction<MyAction>(guard),
                new ModelOfAction<MyAction>(null));
            var executor = BTExecutorFactory.CreateBTExecutor(modelSequence);

            executor.Tick();
            mockDebugger.ResetCalls();
            guard.Action.ReturnStatusForInternalTick = Status.Success;
            executor.Tick();
            mockDebugger.Verify(m => m.LogTick(It.Is((ExecutionTask task) => task.ModelTask == guard)), Times.Exactly(1));
        }
Exemplo n.º 5
0
        public void When_failed_then_return()
        {
            var myfailingAction = new ModelOfAction <MyAction>(null);

            var modelSequence = new ModelSequence(null,
                                                  myfailingAction,
                                                  new ModelOfAction <MyAction>(null));
            var executor = BTExecutorFactory.CreateBTExecutor(modelSequence);

            executor.Tick();
            myfailingAction.Action.ReturnStatusForInternalTick = Status.Failure;
            executor.Tick();
            executor.Tick();

            Assert.AreEqual(Status.Failure, executor.GetStatus());
        }
        public void When_failed_then_return()
        {
            var myfailingAction = new ModelOfAction<MyAction>(null);

            var modelSequence = new ModelSequence(null,
                myfailingAction,
                new ModelOfAction<MyAction>(null));
            var executor = BTExecutorFactory.CreateBTExecutor(modelSequence);

            executor.Tick();
            myfailingAction.Action.ReturnStatusForInternalTick = Status.Failure;
            executor.Tick();
            executor.Tick();

            Assert.AreEqual(Status.Failure, executor.GetStatus());
        }