Exemple #1
0
        public void Assert_that_a_checker_cannot_jump_empty_square()
        {
            var p1Checker = new Checker(Player.PlayerOne);
            var p2Checker = new Checker(Player.PlayerTwo);

            var move = new Move
            {
                Player = Player.PlayerOne,
                From = new Square(5, 2),
                To = new Square(3, 4),
            };

            var gameLogic = new GameLogic { Board = GetEmptyBoard() };
            gameLogic.Board[5][2] = p1Checker;
            gameLogic.Board[0][7] = p2Checker;

            var validation = gameLogic.IsValidMove(move);
            Assert.That(validation.IsValid, Is.False, "P1 attempted to jump over an empty square");
        }
Exemple #2
0
        public void Assert_that_unkinged_p2_checker_cannot_jump_backwards()
        {
            var p1Checker = new Checker(Player.PlayerOne);
            var p2Checker = new Checker(Player.PlayerTwo);

            var move = new Move
            {
                Player = Player.PlayerTwo,
                From = new Square(2, 5),
                To = new Square(3, 6),
            };

            var gameLogic = new GameLogic { Board = GetEmptyBoard() };
            gameLogic.Board[2][5] = p1Checker;
            gameLogic.Board[7][0] = p2Checker;

            var validation = gameLogic.IsValidMove(move);
            Assert.That(validation.IsValid, Is.False, "Cannot jump backwards!");
        }
Exemple #3
0
        public void Assert_that_p2_king_can_jump_p1_baseline_test()
        {
            var p1Checker = new Checker(Player.PlayerOne);
            var p2Checker = new Checker(Player.PlayerTwo) { IsKinged = true, };

            var move = new Move
            {
                Player = Player.PlayerTwo,
                From = new Square(5, 2),
                To = new Square(3, 4),
            };

            var gameLogic = new GameLogic { Board = GetEmptyBoard() };
            gameLogic.Board[5][2] = p2Checker;
            gameLogic.Board[4][3] = p1Checker;

            var validation = gameLogic.IsValidMove(move);
            Assert.That(validation.IsValid, Is.True, "P2 is jumping P1");
        }
Exemple #4
0
        public void Assert_that_kinged_p1_checker_can_jump_backwards()
        {
            var p1Checker = new Checker(Player.PlayerOne) { IsKinged = true, };
            var p2Checker = new Checker(Player.PlayerTwo);

            var move = new Move
            {
                Player = Player.PlayerOne,
                From = new Square(3, 2),
                To = new Square(2, 1),
            };

            var gameLogic = new GameLogic { Board = GetEmptyBoard() };
            gameLogic.Board[3][2] = p1Checker;
            gameLogic.Board[0][7] = p2Checker;

            var validation = gameLogic.IsValidMove(move);
            Assert.That(validation.IsValid, Is.True, "Kings can jump backwards!");
        }
Exemple #5
0
        public void Assert_that_checker_cannot_jump_2_squares_at_once()
        {
            var p1Checker = new Checker(Player.PlayerOne);
            var p2Checker = new Checker(Player.PlayerTwo);

            var move = new Move
            {
                Player = Player.PlayerOne,
                From = new Square(5, 2),
                To = new Square(2, 5),
            };

            var gameLogic = new GameLogic { Board = GetEmptyBoard() };
            gameLogic.Board[5][2] = p1Checker;
            gameLogic.Board[4][3] = p2Checker;

            var validation = gameLogic.IsValidMove(move);
            Assert.That(validation.IsValid, Is.False, "P1 is jumping too far");
        }