def test_is_word_guessed(self): #Test word is guessed self.assertTrue(is_word_guessed('apple', APLE)) self.assertTrue(is_word_guessed('apple', AELP)) self.assertTrue(is_word_guessed('apple', ALL_LETTERS)) self.assertTrue(is_word_guessed('apple', GOOD_GUESS_EXTRA_ON_END)) self.assertTrue(is_word_guessed('apple', GOOD_GUESS_EXTRA_ON_START)) self.assertTrue(is_word_guessed('apple', GOOD_GUESS_EXTRA_ALLOVER)) #Test word is not guessed self.assertFalse(is_word_guessed('apple', SINGLE_LETTER)) self.assertFalse(is_word_guessed('apple', NO_LETTERS))
def test_is_word_guessed(self): secret_word = "queen" tests = [ Test(["q"], False), Test(["q", "u"], False), Test(["q", "u", "e"], False), Test(["q", "r", "v"], False), Test([], False), Test([""], False), Test(["q", "u", "e", "n"], True), Test(["q", "u", "r", "n", "e", "w", "z", "q"], True), ] for test in tests: with self.subTest(test=test): is_guessed = hangman.is_word_guessed("queen", test.input) self.assertEqual(is_guessed, test.output)
def test_the_word_mangosteen_with_wrong_guesses(self): secret_word = 'mangosteen' letters_guessed = ['z', 'x', 'q', 'm', 'a', 'n', 'g', 'o', 's', 't', 'e', 'e', 'n'] result = is_word_guessed(secret_word, letters_guessed) self.assertEqual(True, result)
def test_word_with_repeated_letters_is_guessed(self): secret_word = 'pizza' letters_guessed = ['p', 'i', 'z', 'a'] result = is_word_guessed(secret_word, letters_guessed) self.assertEqual(True, result)
def test_it_can_handle_multiple_wrong_guesses(self): secret_word = 'apple' letters_guessed = ['a', 'p', 'k', 'p', 'r', 's', 'e', 'l'] result = is_word_guessed(secret_word, letters_guessed) self.assertEqual(True, result)
def test_the_word_durian_with_multiple_wrong_guesses(self): secret_word = 'durian' letters_guessed = ['h', 'a', 'c', 'd', 'i', 'm', 'n', 'r', 't', 'u'] result = is_word_guessed(secret_word, letters_guessed) self.assertEqual(True, result)
def test_is_word_guessed_empty_list(self): self.assertFalse(student.is_word_guessed('code', []), "Failed with the empty list")
def test_3_occurences_of_1_letter_in_word_returns_true(): assert hangman.is_word_guessed( secret_word='witticisms', letters_guessed=['j', 'w', 't', 'l', 'i', 'g', 'm', 's', 'c', 'r' ]) is True
import hangman as hg import string if __name__ == '__main__': # is_word_guessed testing assert hg.is_word_guessed('apple', ['a', 'p', 'p', 'l', 'e']) assert hg.is_word_guessed('', ['a', 'p', 'p', 'l', 'e']) assert hg.is_word_guessed('', []) assert not hg.is_word_guessed('apple', []) assert not hg.is_word_guessed('apple', ['a', 'p', 'l', 'e', 'f', 'z', 'c']) # get_guessed_word assert hg.get_guessed_word('apple', ['a', 'p', 'p', 'l', 'e']) \ == 'apple' assert hg.get_guessed_word('', ['a', 'p', 'p', 'l', 'e']) \ == '' assert hg.get_guessed_word('', []) \ == '' assert hg.get_guessed_word('apple', []) \ == '_____' assert hg.get_guessed_word('apple', ['a', 'p', 'l', 'e', 'f', 'z', 'c']) \ == 'ap_le' # get_avaiable_letters assert hg.get_available_letters([]) == string.ascii_lowercase assert hg.get_available_letters(list(string.ascii_lowercase)) \ == '' assert hg.get_available_letters(['e', 'i', 'k', 'p', 'r', 's']) \ == 'abcdfghjlmnoqtuvwxyz'
def test_2_occurences_of_1_letter_in_word_returns_true(): assert hangman.is_word_guessed( secret_word='happy', letters_guessed=['h', 'k', 'y', 'd', 'p', 'r', 'a']) is True
def test_2_occurences_of_2_letters_in_word_returns_true(): assert hangman.is_word_guessed(secret_word='prosecutes', letters_guessed=[ 'k', 'p', 'q', 'r', 'o', 'l', 's', 'e', 'c', 'u', 't' ]) is True
def assert_solution(self, secret_word, letters_guessed): self.assertEquals( hangman_solution.is_word_guessed(secret_word, letters_guessed), hangman.is_word_guessed(secret_word, letters_guessed))
def test_2_letter_secret_word_returns_false(): assert hangman.is_word_guessed(secret_word='ad', letters_guessed=['k', 'd']) is False
def test_2_letter_secret_word_returns_true(): assert hangman.is_word_guessed(secret_word='ad', letters_guessed=['d', 'b', 'a']) is True
def test_no_letters_guessed_returns_false(): assert hangman.is_word_guessed(secret_word='car', letters_guessed=[]) is False
def test_word_with_every_guess_the_same_letter(self): secret_word = "beatitude" letters_guessed = ['b', 'b', 'b', 'b', 'b', 'b', 'b'] result = is_word_guessed(secret_word, letters_guessed) self.assertEqual(False, result)
def test_is_word_guessed_repeated_letters(self): self.assertTrue(student.is_word_guessed('bass', ['a', 's', 'b', 'e']), "Failed with repeated letters") self.assertFalse(student.is_word_guessed('rare', ['f', 't', 'r', 'e']), "Failed with repeated letters")
def test_word_not_guessed(self): secret_word = 'pizza' letters_guessed = ['e', 'a', 'k', 'i', 'r'] result = is_word_guessed(secret_word, letters_guessed) self.assertEqual(False, result)
def test_all_but_one_letter_guessed_returns_false(): assert hangman.is_word_guessed( secret_word='wonderful', letters_guessed=['w', 'n', 'o', 'e', 't', 'd', 'f', 'r', 'l']) is False
def test_is_word_guessed(self): self.assertTrue(student.is_word_guessed('face', ['f', 'c', 'a', 'e'])) self.assertFalse( student.is_word_guessed('moves', ['o', 'c', 'a', 'v', 'e']))
def test_it_returns_true_if_word_guessed_perfectly(self): secret_word = 'kale' letters_guessed = ['k', 'a', 'l', 'e'] result = is_word_guessed(secret_word, letters_guessed) self.assertEqual(True, result)
def test_is_word_guessed_empty_string(self): self.assertTrue(student.is_word_guessed('', ['f', 'c', 'y', 'e']), "Failed with the empty string")
def test_it_returns_false_if_no_letters_gussed_yet(self): secret_word = 'salad' letters_guessed = [] result = is_word_guessed(secret_word, letters_guessed) self.assertEqual(False, result)
def assert_solution(self, secret_word, letters_guessed): self.assertEquals(hangman_solution.is_word_guessed(secret_word, letters_guessed), hangman.is_word_guessed(secret_word, letters_guessed))
def test_is_word_guessed(self): self.assertTrue(is_word_guessed("apple", ['p', 'e', 'a', 'l'])) self.assertFalse(is_word_guessed("esoteric", ['e', 'a'])) self.assertTrue(is_word_guessed("no", ['n', 'o', 't']))