С учетом следующей функции RhymeOrNot
с содержит три параметра: файл, определенный как строка, первое слово, определенное как строка, и второе слово, определенное как строка.Эта функция возвращает логическое значение, указывающее, рифмуются или нет слова.Слово рифмуется с другим словом, если последний гласный и каждое слово после совпадают.Оба слова должны быть в файле, содержащем словарь слова и их произношение.Если ни слова, ни файла, вернуть false.
Пример файла выглядит примерно так:
PHOTOGRAPH F OW1 T AH0 G R AE2 F
STAFF S T AE1 F
Вот модульный тест в Python для проверки функции
class TestRhyme(object):
def Test(self):
assert RhymeOrNot("dictionary.txt", "CAT", "HAT") == True
assert RhymeOrNot("dictionary.txt", "PHOTOGRAPH", "STAFF") == True
assert RhymeOrNot("dictionary.txt", "TRAIN", "SUSTAIN") == True
assert RhymeOrNot("dictionary.txt", "GIRL", "BOY") == False
assert RhymeOrNot("dictionary.txt", "START", "HEART") == True
assert RhymeOrNot("dictionary.txt", "BERRY", "BUILD") == False
assert RhymeOrNot("dictionary.txt", "CLASS", "PASS") == True
Обновлено:
class TestRhyme(object):
def Test(self):
assert RhymeOrNot("dictionary.txt", "CAT", "HAT") == True
assert RhymeOrNot("dictionary.txt", "PHOTOGRAPH", "STAFF") == True
assert RhymeOrNot("dictionary.txt", "TRAIN", "SUSTAIN") == True
assert RhymeOrNot("dictionary.txt", "GIRL", "BOY") == False
assert RhymeOrNot("dictionary.txt", "START", "HEART") == True
assert RhymeOrNot("dictionary.txt", "BERRY", "BUILD") == False
assert RhymeOrNot("dictionary.txt", "CLASS", "PASS") == True
assert RhymeOrNot("dictionary.txt", "", "") == False
assert RhymeOrNot("dictionary.txt", "", "HAPPY") == False
assert RhymeOrNot("dictionary.txt", "HARRYPOTTER", "BTW") == False
assert RhymeOrNot("dictionary.txt", "AIRPLANE", "") == False
assert RhymeOrNot("dictionary.txt", "ABCDE", "FGHJI") == False
assert RhymeOrNot("dictionary.txt", "air", "") == False
assert RhymeOrNot("dictionary.txt", "", "sofa") == False
assert RhymeOrNot("dictionary.txt", "train", "fly") == False
assert RhymeOrNot("dictionary.txt", "chair", "declare") == True
assert RhymeOrNot("dictionary.txt", "slam", "ham") == True
assert RhymeOrNot("dictionary.txt", "StAiR", "PaIr") == True
assert RhymeOrNot("dictionary.txt", "pen", "hen") == True
assert RhymeOrNot("", "pen", "hen") == FileNotFoundError
assert RhymeOrNot("def", "pen", "hen") == FileNotFoundError
Какие еще дополнительные тестовые примеры я могу включить в мое модульное тестирование?Я хочу протестировать все возможные тестовые примеры, которые следуют за функцией RhymeOrNot
.