public void PrintMethodTest() { ScoreBoard scoreBoard = new ScoreBoard(console); scoreBoard.Source = "../../Test Resources/ScoreBoardTest.txt"; scoreBoard.Load(); using (var writer = new StringWriter()) { Console.SetOut(writer); scoreBoard.Print(); writer.Flush(); string result = writer.GetStringBuilder().ToString(); string expected = " ***** Top 5 Scores *****\r\n" + "1. Milena --> 0 mistakes\r\n" + "2. Ivan --> 1 mistakes\r\n" + "3. Stancho --> 2 mistakes\r\n" + "4. Iva --> 3 mistakes\r\n" + "5. Mitko --> 4 mistakes\r\n"; Assert.AreEqual(expected, result); } }
public void TopCommandEvaluatorCheck() { ScoreBoard scoreBoard = new ScoreBoard(console); scoreBoard.Source = "../../Test Resources/ScoreBoardTest.txt"; scoreBoard.Load(); using (var writer = new StringWriter()) { Console.SetOut(writer); scoreBoard.Print(); writer.Flush(); string result = writer.GetStringBuilder().ToString(); var splittedResult = result.Split(new string[] { " mistakes", " --> " }, StringSplitOptions.RemoveEmptyEntries); bool isTheTopScorersListCorrect = true; for (int i = 3; i < splittedResult.Length; i += 2) { var previousTopResult = int.Parse(splittedResult[i]); var currentTopResult = int.Parse(splittedResult[i - 2]); if (currentTopResult > previousTopResult) { isTheTopScorersListCorrect = false; } } Assert.IsTrue(isTheTopScorersListCorrect); } }