Пример #1
0
        public void WhenGameIsFinished_DontIncrementNumberOfGuesses()
        {
            var hangman = new Core.Hangman("a");

            hangman.GuessLetter('b');
            Assert.AreEqual(1, hangman.NumberOfGuesses);

            hangman.GuessLetter('a');
            Assert.AreEqual(2, hangman.NumberOfGuesses);

            hangman.GuessLetter('c');
            Assert.AreEqual(2, hangman.NumberOfGuesses);

            hangman.GuessLetter('a');
            Assert.AreEqual(2, hangman.NumberOfGuesses);
        }
Пример #2
0
        private static void Main()
        {
            System.Console.Write("Please enter a word: ");

            var searchedWord = System.Console.ReadLine();

            System.Console.Clear();

            var hangman = new Core.Hangman(searchedWord);

            while (!hangman.GameFinished)
            {
                System.Console.Write($"Enter your guess {hangman.NumberOfGuesses + 1}: ");
                var guessedLetter = System.Console.ReadLine()?.FirstOrDefault();

                if (guessedLetter == null)
                {
                    continue;
                }

                var output = hangman.GuessLetter(guessedLetter.Value);

                System.Console.Clear();
                System.Console.WriteLine(output);
            }

            System.Console.WriteLine($"Congratulations! You won with {hangman.NumberOfGuesses} guess(es).");
            System.Console.WriteLine("Press any key to exit.");
            System.Console.ReadKey();
        }
Пример #3
0
        public void WhenAllLettersGuessed_GameIsFinished()
        {
            var hangman = new Core.Hangman("a");

            hangman.GuessLetter('a');

            Assert.IsTrue(hangman.GameFinished);
        }
Пример #4
0
        public void IncorrectlyGuessingTheWordDeductsAttempts()
        {
            var attemptsLeft = _hangman.GetAttemptsLeft();

            _hangman.GuessLetter('0');
            _hangman.GetAttemptsLeft().Should().Equals(attemptsLeft - 1);
        }
Пример #5
0
        public void WhenGuessing_IncreaseNumberOfGuesses()
        {
            _hangman.GuessLetter('a');
            Assert.AreEqual(1, _hangman.NumberOfGuesses);

            _hangman.GuessLetter('d');
            Assert.AreEqual(2, _hangman.NumberOfGuesses);
        }