public void WhenTheGameStateIsIncorrect_ThenNoOccupationsAreParsed(string statusRepresentation)
        {
            var game        = new Game();
            var occupations = PlainTextInterpreter.OccupationsFromString(statusRepresentation, game);

            Assert.AreEqual(0, occupations.Count);
        }
        public void WhenNoMovesAreMadeOrMoveCountIsEqual_ThenItsPlayerOneTurn(string statusRepresentation)
        {
            var game = new Game();
            var expectedStatusText = $"It's {game.PlayerOne.Name}'s turn";

            game.Initialize(PlainTextInterpreter.OccupationsFromString(statusRepresentation, game));
            var actualStatusText = game.GetStatusText();

            Assert.AreEqual(expectedStatusText, actualStatusText);
        }
        public void WhenPlayerXHasMoreTurns_ThenItsPlayerOTurn(string statusRepresentation)
        {
            var expectedStatusText = "It's Player O's turn";
            var game = new Game();

            game.Initialize(PlainTextInterpreter.OccupationsFromString(statusRepresentation, game));
            var actualStatusText = game.GetStatusText();

            Assert.AreEqual(expectedStatusText, actualStatusText);
        }
        public void WhenTheGameEndedAsATie_ThenTheCorrectStatusMessageIsShown(string statusRepresentation)
        {
            var expectedStatusText = "This game ended up in a tie... ;(";
            var game = new Game();

            game.Initialize(PlainTextInterpreter.OccupationsFromString(statusRepresentation, game));
            var actualStatusText = game.GetStatusText();

            Assert.AreEqual(expectedStatusText, actualStatusText);
        }
        public void WhenPlayerOIsTheWinner_ThenTheCorrectStatusMessageIsShown(string statusRepresentation)
        {
            var expectedStatusText = "Player O is the winner!";
            var game = new Game();

            game.Initialize(PlainTextInterpreter.OccupationsFromString(statusRepresentation, game));
            var actualStatusText = game.GetStatusText();

            Assert.AreEqual(expectedStatusText, actualStatusText);
        }
示例#6
0
        static async Task Main(string[] args)
        {
            Console.Clear();
            Console.WriteLine("Hi! This is a very awesome tic tac toe game status analyzer");
            var url = GetUrlFromUserInput();
            var downloadStatusFileContent = await DownloadStatusFileAsync(url);

            var game = new Game();

            game.Initialize(PlainTextInterpreter.OccupationsFromString(downloadStatusFileContent, game));

            Console.WriteLine();
            Console.WriteLine(game.GetStatusText());
            Console.WriteLine();

            Console.ReadKey();
        }