Exemple #1
0
        public void GetScoreForTeam_AfterMovementWhite_BottomLeftPawnTwoFieldUp_WhiteTeam_ShouldBe_Minus1()
        {
            // arrange
            var       board             = new OrdinaryChessBoard();
            TeamColor team              = TeamColor.White;
            int       expectedScore     = -1;
            var       startPawnPosition = new Models.Position.Position(1, 0);
            var       endPawnPosition   = new Models.Position.Position(3, 0);

            // act
            var pawn = board.RemoveFigure(startPawnPosition);

            var x = new OrdinaryChessBoardFigurePositionWeight();

            x.GetPositionWeight(pawn);

            board.SetFigure(pawn, endPawnPosition);
            pawn.Move(endPawnPosition);

            x.GetPositionWeight(pawn);

            var result = board.GetScoreForTeam(team);

            // assert
            Assert.AreEqual(expectedScore, result);
        }
        public void GetFigureTypeWeight_Rook_ShouldReturn100()
        {
            // arrange
            var figureType = FigureType.Rook;
            int expected   = 100;
            var weights    = new OrdinaryChessBoardFigurePositionWeight();

            // act
            var result = weights.GetFigureTypeWeight(figureType);

            // assert
            Assert.AreEqual(expected, result);
        }
        public void GetPositionWeight_King_Black_AlmostTopRightCorner_ShouldReturn_6()
        {
            // arrange
            var postion  = new Models.Position.Position(7, 6);
            var team     = TeamColor.Black;
            var figure   = new King(postion, team);
            int expected = 6;
            var weights  = new OrdinaryChessBoardFigurePositionWeight();

            // act
            var result = weights.GetPositionWeight(figure);

            // assert
            Assert.AreEqual(expected, result);
        }
        public void GetPositionWeight_King_White_SomewhereInTheMiddle_ShouldReturn_Minus4()
        {
            // arrange
            var postion  = new Models.Position.Position(2, 3);
            var team     = TeamColor.White;
            var figure   = new King(postion, team);
            int expected = -4;
            var weights  = new OrdinaryChessBoardFigurePositionWeight();

            // act
            var result = weights.GetPositionWeight(figure);

            // assert
            Assert.AreEqual(expected, result);
        }
        public void GetPositionWeight_King_White_TopLeftCorner_ShouldReturn_Minus6()
        {
            // arrange
            var postion  = new Models.Position.Position(7, 0);
            var team     = TeamColor.White;
            var figure   = new King(postion, team);
            int expected = -6;
            var weights  = new OrdinaryChessBoardFigurePositionWeight();

            // act
            var result = weights.GetPositionWeight(figure);

            // assert
            Assert.AreEqual(expected, result);
        }