コード例 #1
0
ファイル: MarsRoverTest.cs プロジェクト: vsirakova/MarsRovers
        public void TryMove_MoveInBounds_ReturnTrue_AssignCorrectCoords()
        {
            var plateau = new Plateau
            {
                BottomLeftCoordX = 0,
                BottomLeftCoordY = 0,
                TopRightCoordX = 5,
                TopRightCoordY = 5
            };

            var commands = new NavigationCommand[] { NavigationCommand.M, NavigationCommand.R, NavigationCommand.M, NavigationCommand.M, NavigationCommand.R };
            var rover = new MarsRover(4, 5, App.Enums.Direction.W, plateau, commands);

            var result = rover.TryMove(NavigationCommand.M);

            Assert.AreEqual(rover.CoordX, 3);
            Assert.AreEqual(rover.CoordY, 5);
            Assert.AreEqual(rover.Direction, Direction.W);
        }
コード例 #2
0
ファイル: MarsRoverTest.cs プロジェクト: vsirakova/MarsRovers
        public void TryMove_Right_ReturnTrue_KeepOldCoords_ChangeDirection()
        {
            var plateau = new Plateau
            {
                BottomLeftCoordX = 0,
                BottomLeftCoordY = 0,
                TopRightCoordX = 5,
                TopRightCoordY = 5
            };

            var commands = new NavigationCommand[] { NavigationCommand.M, NavigationCommand.R, NavigationCommand.M, NavigationCommand.M, NavigationCommand.R };
            var rover = new MarsRover(4, 5, App.Enums.Direction.N, plateau, commands);

            var result = rover.TryMove(NavigationCommand.R);

            Assert.AreEqual(rover.CoordX, 4);
            Assert.AreEqual(rover.CoordY, 5);
            Assert.AreEqual(rover.Direction, Direction.E);
        }