public void TestControllerAddPlayerShouldExecuteCorrectly() { var grid = this.GridMock(); var view = this.ViewMock(); var timer = this.TimerMock(); var players = new List<MinesweeperPlayer>(); var controller = new MinesweeperGameController( grid.Object, view.Object, timer.Object, players, MinesweeperDifficultyType.Easy); var args = new MinesweeperAddPlayerEventArgs { PlayerName = "test" }; this.isScoreBoardDisplayed = false; view.Raise(e => e.AddPlayerEvent += null, args); Assert.AreEqual(players[0].Name, "test", "Player not added!"); }
/// <summary> /// The display game over. /// </summary> /// <param name="gameResult"> /// The game result. /// </param> public void DisplayGameOver(bool gameResult) { if (gameResult == false) { var gameOverBox = new ConsoleBox<ConsoleColor>( 25, 10, 14, 5, ConsoleColor.Red, ConsoleColor.Black, "Game Over!"); ConsolePrinter.Print(this.consoleWrpView, gameOverBox); this.consoleWrpView.ReadKey(true); ConsoleMenus.StartMainMenu(this.consoleWrpView); } else { var gameOverBox = new ConsoleBox<ConsoleColor>( 15, 10, 30, 5, ConsoleColor.Green, ConsoleColor.Black, "Enter your name: "); ConsolePrinter.Print(this.consoleWrpView, gameOverBox); var name = this.consoleWrpView.ReadLine(); var args = new MinesweeperAddPlayerEventArgs { PlayerName = name }; this.AddPlayerEvent.Invoke(this, args); ConsoleMenus.StartMainMenu(this.consoleWrpView); } }
/// <summary> /// The player add. /// </summary> /// <param name="name"> /// The player name. /// </param> private void PlayerAdd(string name) { var movesLabel = (Label)this.win.FindName("ScoreLabel"); var timeLabel = (Label)this.win.FindName("TimeLabel"); if (movesLabel == null || timeLabel == null) { throw new NullReferenceException("Move or time labels are not available!"); } var args = new MinesweeperAddPlayerEventArgs { PlayerName = name }; if (this.AddPlayerEvent != null) { this.AddPlayerEvent.Invoke(this, args); } }