Beispiel #1
0
    def test_prints_success_message_if_all_letters_guessed(self, mock_stdout):
        # Arrange
        input_letters = [
            'n',
            'a',
            'm',
            'w',
            'o',
            'n',
            's',
        ]

        # Act
        with unittest.mock.patch('builtins.input', side_effect=input_letters):

          snowman('snowman')

        # Assert
        assert "you win" in mock_stdout.getvalue().lower()
Beispiel #2
0
    def test_prints_failure_message_with_7_straight_wrong_guesses(self, mock_stdout):
        # Arrange
        input_letters = [
            'b',
            'c',
            'p',
            'z',
            'q',
            'v',
            'x',
        ]

        # Act
        with unittest.mock.patch('builtins.input', side_effect=input_letters):

          snowman('snowman')

        # Assert
        assert "you win" not in mock_stdout.getvalue().lower()  
        assert "sorry, you lose!  the word was snowman" in mock_stdout.getvalue().lower()
Beispiel #3
0
    def test_prints_success_message_with_3_wrong_guesses_and_the_rest_right(self, mock_stdout):
        # Arrange
        input_letters = [
            's',
            'n',
            'b',
            'o',
            'w',
            'm',
            'a',
            'q',
            'v',
            'n',
        ]

        # Act
        with unittest.mock.patch('builtins.input', side_effect=input_letters):

          snowman('snowman')

        # Assert
        assert "you win" in mock_stdout.getvalue().lower()  
        assert "sorry, you lose!  the word was snowman" not in mock_stdout.getvalue().lower()
import unittest

if __name__ == '__main__':
    # Get a random word 5-8 letters long
    user_input = ""
    while user_input != "p" and user_input != "t":
        user_input = input('Please enter p to play or t to test => ')

    if user_input == "p":
        from game import snowman, SNOWMAN_MIN_WORD_LENGTH, SNOWMAN_MAX_WORD_LENGTH
        from wonderwords import RandomWord

        random_word_generator = RandomWord()
        snowman_word = random_word_generator.word(
            word_min_length=SNOWMAN_MIN_WORD_LENGTH,
            word_max_length=SNOWMAN_MAX_WORD_LENGTH)

        snowman(snowman_word)
    else:
        from game_test import *
        unittest.main()