public void ticking_with_no_child_node_throws_exception() { Init(); Assert.Throws <ApplicationException>( () => testObject.Tick(new MyTimeData()) ); }
public void RunningChildReturnsRunning() { var child = new ReturnXNode(NodeStatus.RUNNING); var node = new InverterNode(child); var status = node.Tick(); Assert.That(status, Is.EqualTo(NodeStatus.RUNNING)); }
public void inverts_failure_of_child_node() { Init(); var time = new MyTimeData(); var mockChildNode = new Mock<IMyBehaviourTreeNode>(); mockChildNode .Setup(m => m.Tick(time)) .Returns(MyBehaviourTreeStatus.Failure); testObject.AddChild(mockChildNode.Object); Assert.Equal(MyBehaviourTreeStatus.Success, testObject.Tick(time)); mockChildNode.Verify(m => m.Tick(time), Times.Once()); }
public void FailureChildReturnsSuccess() { var child = new AlwaysFailureNode(); var inverterNode = new InverterNode(child); var status = inverterNode.Tick(); Assert.That(status, Is.EqualTo(NodeStatus.SUCCESS)); }
public void SuccessChildReturnsFailure() { var child = new AlwaysSuccessNode(); var inverterNode = new InverterNode(child); var status = inverterNode.Tick(); Assert.That(status, Is.EqualTo(NodeStatus.FAILURE)); }
public void Tick_ChildFailure_ReturnsSuccess() { var blackboard = this.GetBlackboard(); var childStub = new Mock <ActionNode <TestBlackboard> >(); var inverterNode = new InverterNode <TestBlackboard>(childStub.Object); childStub.Setup(x => x.Tick(blackboard)).Returns(NodeStatus.Failure); Assert.AreEqual(NodeStatus.Success, inverterNode.Tick(blackboard)); }