public void CheckSecondSituationDiagonallyRightTopTest() { Board board = new Board(); bool? win; AlphaBeta alphaBeta = new AlphaBeta(); int result = 0; //__XOX__ //__OXO__ //_OXXXO_ //should be inf //but its not //__X____ //_XX____ //XXX____ board.PutToken(0); board.PutToken(1); board.PutToken(1); board.PutToken(2); board.PutToken(2); board.PutToken(2); alphaBeta.CheckSecondSituationDiagonallyRightTop(true, board, ref result); Assert.AreEqual(900000, result); //___O //__XO___ //_XXO___ //XXXO___ result = 0; board.PutToken(3); board.PutToken(3); board.PutToken(3); board.PutToken(3); alphaBeta.CheckSecondSituationDiagonallyRightTop(true, board, ref result); Assert.AreEqual(50000, result); //___O //__XO___ //_XXO___ //_XXO___ result = 0; board.RemoveToken(0); alphaBeta.CheckSecondSituationDiagonallyRightTop(true, board, ref result); Assert.AreEqual(0, result); result = 0; //____X__ //_______ //__XO___ //_XXO___ //_XXO___ board.RemoveToken(3); board.PutToken(4); board.PutToken(4); board.PutToken(4); board.PutToken(4); board.PutToken(4); alphaBeta.CheckSecondSituationDiagonallyRightTop(true, board, ref result); Assert.AreEqual(900000, result); result = 0; //______X //______X //____X_X //___XX_X board = new Board(); board.PutToken(3); board.PutToken(4); board.PutToken(4); board.PutToken(6); board.PutToken(6); board.PutToken(6); board.PutToken(6); alphaBeta.CheckSecondSituationDiagonallyRightTop(true, board, ref result); Assert.AreEqual(900000, result); result = 0; //__X____ //_XO____ //XOO____ //OXO____ board = new Board(); board.PutToken(0); board.PutToken(0); board.PutToken(1); board.PutToken(1); board.PutToken(1); board.PutToken(2); board.PutToken(2); board.PutToken(2); board.PutToken(2); alphaBeta.CheckSecondSituationDiagonallyRightTop(true, board, ref result); Assert.AreEqual(900000, result); result = 0; //_______ //___X___ //__XO___ //__OX___ //XOOO___ //OXOO___ board.RemoveToken(1); board.PutToken(3); board.PutToken(3); board.PutToken(3); board.PutToken(3); board.PutToken(3); alphaBeta.CheckSecondSituationDiagonallyRightTop(true, board, ref result); Assert.AreEqual(900000, result); result = 0; //_______ //___XX__ //__XOO__ //__OXO__ //XOOOX__ //OXOOX__ board.PutToken(4); board.PutToken(4); board.PutToken(4); board.PutToken(4); board.PutToken(4); alphaBeta.CheckSecondSituationDiagonallyRightTop(true, board, ref result); Assert.AreEqual(900000, result); //_______ //___XX__ //___OO__ //_XOXO__ //XOOOX__ //OXOOX__ result = 0; board.RemoveToken(2); board.PutToken(1); alphaBeta.CheckSecondSituationDiagonallyRightTop(true, board, ref result); Assert.AreEqual(900000, result); //____O__ //___XX__ //__XOX__ //_XOOX__ //_OXOO__ result = 0; board = new Board(); board.PutToken(1); board.PutToken(1); board.PutToken(2); board.PutToken(2); board.PutToken(2); board.PutToken(3); board.PutToken(3); board.PutToken(3); board.PutToken(3); board.PutToken(4); board.PutToken(4); board.PutToken(4); board.PutToken(4); board.PutToken(4); alphaBeta.CheckSecondSituationDiagonallyRightTop(true, board, ref result); Assert.AreEqual(900000, result); result = 0; board.RemoveToken(4); alphaBeta.CheckSecondSituationDiagonallyRightTop(true, board, ref result); Assert.AreEqual(int.MaxValue, result); }