예제 #1
0
 public void Move(MoveAction moveAction)
 {
     _moveCoordinator.Move(Surface, this, moveAction);
 }
예제 #2
0
        public void MoveForward_WhenDirectionEast_ThenMoveForward()
        {
            var marsSurface   = new MarsSurfaceStub(5, 3, true);
            var startPosition = new Vector2(1, 1);
            var robot         = new MartianRobotStub(marsSurface, startPosition, Direction.East);

            _testee.Move(marsSurface, robot, MoveAction.Forward);

            Assert.AreEqual(Direction.East, robot.Direction);
            Assert.AreEqual(MarsRobotState.Active, robot.State);
            Assert.AreEqual(
                new Vector2(startPosition.X + 1, startPosition.Y),
                robot.Position);
        }