static void Main(string[] args) { Console.WriteLine("Welcome to the \"Battle Field\" game."); ConsoleBattleField game = new ConsoleBattleField(); int fieldSize = TryGetInputFieldSizeUntilValid(game); game.InitializeGameField(fieldSize); game.GenerateMines(); while (true) { Console.WriteLine(String.Empty + game.GetBattleFieldAsString()); int mineRow, mineCol; TryGetInputMineCoordinatesUntilValid(game, out mineRow, out mineCol); game.DetonateMine(mineRow, mineCol); if (game.MineCount == 0) { Console.WriteLine(game.GetBattleFieldAsString()); Console.WriteLine("{0}Game over! {0}Detonated mines: {1}", Environment.NewLine, game.DetonatedMinesCount); break; } } }
public void TestGetBattleFieldAsString() { ConsoleBattleField testGame = new ConsoleBattleField(); testGame.InitializeGameField(10); StringBuilder expectedPrintedField = new StringBuilder(); expectedPrintedField.AppendLine(" 0 1 2 3 4 5 6 7 8 9 "); expectedPrintedField.AppendLine(" ----------------------------"); expectedPrintedField.AppendLine("0| - - - - - - - - - - "); expectedPrintedField.AppendLine("1| - - - - - - - - - - "); expectedPrintedField.AppendLine("2| - - - - - - - - - - "); expectedPrintedField.AppendLine("3| - - - - - - - - - - "); expectedPrintedField.AppendLine("4| - - - - - - - - - - "); expectedPrintedField.AppendLine("5| - - - - - - - - - - "); expectedPrintedField.AppendLine("6| - - - - - - - - - - "); expectedPrintedField.AppendLine("7| - - - - - - - - - - "); expectedPrintedField.AppendLine("8| - - - - - - - - - - "); expectedPrintedField.AppendLine("9| - - - - - - - - - - "); Assert.AreEqual(expectedPrintedField.ToString(), testGame.GetBattleFieldAsString()); }