public void Should_Reset_Rover()
 {
     Rover rover = new Rover(5, 10, Direction.South);
     rover.Reset();
     Assert.AreEqual(new int[] { 0, 0 }, rover.GetLocation());
     Assert.AreEqual(Direction.North, rover.GetDirection());
 }
        public void Should_Turn_Left_Or_Right_Correctly()
        {
            bool[,] map = create_map();
            Rover rover = new Rover(0,0,Direction.North);
            Assert.True(rover.Move(Command.l, map).IsOperationSucceeded());
            Assert.AreEqual(Direction.West,rover.GetDirection());

            Assert.True(rover.Move(Command.l,map).IsOperationSucceeded());
            Assert.AreEqual(Direction.South, rover.GetDirection());

            Assert.True(rover.Move(Command.l, map).IsOperationSucceeded());
            Assert.AreEqual(Direction.East, rover.GetDirection());

            Assert.True(rover.Move(Command.l, map).IsOperationSucceeded());
            Assert.AreEqual(Direction.North, rover.GetDirection());

            Assert.True(rover.Move(Command.r, map).IsOperationSucceeded());
            Assert.AreEqual(Direction.East, rover.GetDirection());

            Assert.True(rover.Move(Command.r, map).IsOperationSucceeded());
            Assert.AreEqual(Direction.South, rover.GetDirection());

            Assert.True(rover.Move(Command.r, map).IsOperationSucceeded());
            Assert.AreEqual(Direction.West, rover.GetDirection());

            Assert.True(rover.Move(Command.r, map).IsOperationSucceeded());
            Assert.AreEqual(Direction.North, rover.GetDirection());
        }
 public void Should_Return_Correct_Direction()
 {
     Rover rover = new Rover(0, 0, Direction.South);
     Assert.AreEqual(Direction.South, rover.GetDirection());
 }