public void TestGenerateRandomDigits() { BullsAndCowsGame_Accessor game = new BullsAndCowsGame_Accessor(); game.GenerateRandomDigits(); int repeatedSameNumbersCount = 0; int previousFirstDigit = 0; int previousSecondDigit = 0; int previousThirdDigit = 0; int previousFourthDigit = 0; for (int i = 0; i < 100; i++) { game.GenerateRandomDigits(); int currentFirstDigit = game.NumberForGuessDigits[0]; int currentSecondDigit = game.NumberForGuessDigits[1]; int currentThirdtDigit = game.NumberForGuessDigits[2]; int currentFourthDigit = game.NumberForGuessDigits[3]; bool isCurrentEqualToPreviousNumber = currentFirstDigit == previousFirstDigit && currentSecondDigit == previousSecondDigit && currentThirdtDigit == previousThirdDigit && currentFourthDigit == previousFourthDigit; if (isCurrentEqualToPreviousNumber) { repeatedSameNumbersCount++; } previousFirstDigit = currentFirstDigit; previousSecondDigit = currentSecondDigit; previousThirdDigit = currentThirdtDigit; previousFourthDigit = currentFourthDigit; } if (repeatedSameNumbersCount > 5) { Assert.Fail("Too many equal numbers are generated!"); } }
public void TestGetStartValuesCheatNumber() { BullsAndCowsGame_Accessor game = new BullsAndCowsGame_Accessor(); game.GenerateRandomDigits(); game.GetCheat(); game.GetStartValues(); char[] expected = { 'X', 'X', 'X', 'X' }; char[] actual = game.CheatNumber; CollectionAssert.AreEqual(expected, actual, "GetStartValues didn't intialize the help cheat array properly!"); }
public void TestGetStartValuesCount() { BullsAndCowsGame_Accessor game = new BullsAndCowsGame_Accessor(); game.GenerateRandomDigits(); game.GetCheat(); game.GetStartValues(); int expected = 0; int actual = game.Cheats; Assert.AreEqual <int>(expected, actual, "GetStartValues didn't make used cheats number 0."); }