public void BestMinAndMaxScoreAtDepth() { MiniMax target = new MiniMax(); int depth = 5; int expect = 995; int actual = target.GetScore(depth); Assert.AreEqual(expect, actual); depth++; expect = -994; actual = target.GetScore(depth); Assert.AreEqual(expect, actual); }
public void BestMinScore() { MiniMax target = new MiniMax(); int depth = 0; int expect = -1000; int actual = target.GetScore(depth); Assert.AreEqual(expect, actual); }
public void ReturnsScoreInFinalGameState() { MiniMax target = new MiniMax(); int depth = 5; int expected = 995; char[,] givenBoard = new char[3,3]; givenBoard[0,0] = 'X'; givenBoard[2,0] = 'O'; givenBoard[0,1] = 'X'; givenBoard[2,1] = 'O'; givenBoard[0,2] = 'X'; int actual = 0; if (target.Win(givenBoard) == true) { actual = target.GetScore(depth); } Assert.AreEqual(expected, actual); givenBoard = returnTiedBoard(); expected = 0; if (target.Tie(givenBoard)) { actual = 0; } Assert.AreEqual(expected, actual); }