def test_contains_with_non_matching_patterns(self): # Negative test cases (counterexamples) with non-matching patterns assert contains('abc', 'z') is False # remember to test other letters assert contains('abc', 'ac') is False # important to test close cases assert contains('abc', 'az') is False # first letter, but not last assert contains('abc', 'abz') is False # first 2 letters, but not last assert contains('🤬🤩🤓🐛🙋♂️', '🤬') is True # overlapping prefix
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix assert contains('aaaaaaaaab', 'b') is True # overlapping prefix
def test_contains_with_non_matching_patterns(self): # Negative test cases (counterexamples) with non-matching patterns assert contains('abc', 'z') is False # remember to test other letters assert contains('abc', 'ac') is False # important to test close cases assert contains('abc', 'az') is False # first letter, but not last assert contains('abc', 'abz') is False # first 2 letters, but not last assert contains('abc', 'abcd') is False # partial pattern in text
def test_contains_with_non_matching_patterns(self): # Negative test cases (counterexamples) with non-matching patterns assert contains('abc', 'z') is False # remember to test other letters assert contains('abc', 'ac') is False # important to test close cases assert contains('abc', 'az') is False # first letter, but not last assert contains('abc', 'abz') is False # first 2 letters, but not last # TODO: Write more negative test cases with assert is False statements assert contains('', 'a') is False
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix # Write more test cases that check complex patterns or edge cases assert contains('ahnananacomeon', 'comeon') is True
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix # TODO: Write more test cases that check complex patterns or edge cases # You'll need a lot more than this to test your algorithm's robustness assert contains('xdzxdxdlol', 'xdz') is True
def test_contains_with_matching_patterns(self): # Positive test cases (examples) with matching patterns assert contains('abc', '') is True # all strings contain empty string assert contains('abc', 'a') is True # single letters are easy assert contains('abc', 'b') is True assert contains('abc', 'c') is True assert contains('abc', 'ab') is True # multiple letters are harder assert contains('abc', 'bc') is True assert contains('abc', 'abc') is True # all strings contain themselves assert contains('aaa', 'a') is True # multiple occurrences assert contains('aaa', 'aa') is True # overlapping pattern assert contains('aaa', 'aaa') is True # pattern is the whole string
def test_contains_with_matching_patterns(self): # Positive test cases (examples) with matching patterns assert contains('abc', '') is True # all strings contain empty string assert contains('abc', 'a') is True # single letters are easy assert contains('abc', 'b') is True assert contains('abc', 'c') is True assert contains('abc', 'ab') is True # multiple letters are harder assert contains('abc', 'bc') is True assert contains('abc', 'abc') is True # all strings contain themselves assert contains('aaa', 'a') is True # multiple occurrences assert contains('aaa', 'aa') is True # overlapping pattern # TODO: Write more positive test cases with assert is True statements assert contains('zzz', 'z') is True
def test_contains_with_non_matching_patterns(self): # Negative test cases (counterexamples) with non-matching patterns assert contains('abc', 'z') is False # remember to test other letters assert contains('abc', 'ac') is False # important to test close cases assert contains('abc', 'az') is False # first letter, but not last assert contains('abc', 'abz') is False # first 2 letters, but not last assert contains('hyped', 'l') is False assert contains('hyped', ' ') is False assert contains('hyped', 'hhy') is False assert contains('hyped', 'ypod') is False assert contains('n', '\n') is False # escape characters assert contains('[[]]', '[[[]]') is False # non alpha characters
def test_random_strings_with_matching(self): tstring = '' for i in range(10000): tstring += chr(random.randint(96, 120)) lwr = random.randint(0, 10000) tterm = tstring[lwr:random.randint(lwr, 10000)] assert contains(tstring, tterm) tterm = tstring[lwr:random.randint(lwr, 10000)] assert contains(tstring, tterm) tterm = tstring[lwr:random.randint(lwr, 10000)] assert contains(tstring, tterm) tterm = tstring[lwr:random.randint(lwr, 10000)] assert contains(tstring, tterm)
def test_contains_with_non_matching_patterns(self): # Negative test cases (counterexamples) with non-matching patterns assert contains('abc', 'z') is False # remember to test other letters assert contains('abc', 'ac') is False # important to test close cases assert contains('abc', 'az') is False # first letter, but not last assert contains('abc', 'abz') is False # first 2 letters, but not last assert contains('road', 'h') is False assert contains('cloose', 'close') is False assert contains('helllo', 'hello') is False assert contains('hooray', 'no') is False
def test_contains_with_non_matching_patterns(self): # Negative test cases (counterexamples) with non-matching patterns assert contains('abc', 'z') is False # remember to test other letters assert contains('abc', 'ac') is False # important to test close cases assert contains('abc', 'az') is False # first letter, but not last assert contains('abc', 'abz') is False # first 2 letters, but not last assert contains('bookshelf', 'no books') is False assert contains('wackadoodledoo', 'abc') is False assert contains('1234456131343141322222ab', 'qr') is False assert contains('!!!!!!!!!!', 'abcdefg') is False
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix # TODO: Write more test cases that check complex patterns or edge cases # You'll need a lot more than this to teassert contains('bananas', 'nas') is True st your algorithm's robustness assert contains('monkey dunkey', 'dunkey') is True #suffix which is seperate word assert contains('monkey dunkey', ' ') is True # space char assert contains('monkey dunkey', '') is True # empty space char assert contains('monkey dunkey', ' dunkey') is True assert contains('monkey dunkey', 'monkey dunkey') is True #Compare text entirety assert contains('mon$e#y d@nk^y', 'dunkey') is False #Dont break on special chars
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix # TODO: Write more test cases that check complex patterns or edge cases assert contains('defeat', 'ea') is True assert contains('seven', 'en') is True assert contains('110011010', '010') is True assert contains('boom bam bop bada bop boump pow', 'ou') is True
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix assert contains('oooooooooh', 'oooh') == True assert contains('oooooh', 'oooh') == True assert contains('[][][]][][[][][][][[[]]]]]]', ']]]]') == True assert contains('..,,.. ,,.,. ,., ,,,,.... ,,,,,,..... .,.', ' .,.') == True # obscure and space
def test_contains_with_complex(self): assert contains('lkasjdlsak', 'l') is True assert contains('2', '') is True assert contains('12', '') is True assert contains('$$$', '!') is False assert contains(';', '0') is False assert contains('kome', 'love') is False assert contains('Japan', 'n') is True
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix # TODO: Write more test cases that check complex patterns or edge cases # You'll need a lot more than this to test your algorithm's robustness assert contains('Long live all the mountains we moved', 'we') is True assert contains('its delicate', 'deli') is True assert contains('shooby doo bap bap', 'o bap') is True assert contains('housemate', 'house') is True
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix # TODO: Write more test cases that check complex patterns or edge cases # You'll need a lot more than this to test your algorithm's robustness assert contains('mississippi', 'miss') is True assert contains('googoogaagaa', 'aagaa') is True assert contains('lollipop', 'lipop') is True assert contains('hidden', 'idden') is True
def test_contains_with_non_matching_patterns(self): # Negative test cases (counterexamples) with non-matching patterns assert contains('abc', 'z') is False # remember to test other letters assert contains('abc', 'ac') is False # important to test close cases assert contains('abc', 'az') is False # first letter, but not last assert contains('abc', 'abz') is False # first 2 letters, but not last assert contains('hello', 'aba') is False assert contains('farfignugen', 'fart') is False assert contains('trouble', 'in') is False
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix assert contains('vroomvroom', 'room') is True assert contains('flibbertigibbet', 'bbe') is True assert contains('blartblartblart', 'art') is True
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains("ababc", "ab") is True # multiple occurrences assert contains("banana", "na") is True # multiple occurrences assert contains("ababc", "abc") is True # overlapping prefix assert contains("bananas", "nas") is True # overlapping prefix assert contains("BOOMBOOMBOMBBOOMB", "bomb") is True assert contains("havannaoonana", "nna") is True assert contains("**__yeet__**", "yeet") is True
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix assert contains('captalienisawesome','alien') is True assert contains('whereswaldo', 'waldo') is True assert contains('obamalamabobammbanananafofamafeefifofamaobama', 'fofama') is True
def test_contains_with_non_matching_patterns(self): # Negative test cases (counterexamples) with non-matching patterns assert contains('abc', 'z') is False # remember to test other letters assert contains('abc', 'ac') is False # important to test close cases assert contains('abc', 'az') is False # first letter, but not last assert contains('abc', 'abz') is False # first 2 letters, but not last assert contains('thenorthpole', 'thesouth') is False assert contains('santawasalie', 'wastrue') is False assert contains('friesaretasty', 'tazty') is False
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix assert contains('Who are you?', ' y') is True assert contains('What is happening?', 'g?g') is False assert contains('What is happening?', 'g?g????') is False
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix self.assertTrue(contains('aaaaababbabc', 'abc')) self.assertTrue(contains('wingardium leviosa', 'M l')) self.assertTrue(contains('bb Beibi/be', 'be')) self.assertTrue(find_index("rat a tat cat", "at"))
def test_contains_with_non_matching_patterns(self): # Negative test cases (counterexamples) with non-matching patterns assert contains('abc', 'z') is False # remember to test other letters assert contains('abc', 'ac') is False # important to test close cases assert contains('abc', 'az') is False # first letter, but not last assert contains('abc', 'abz') is False # first 2 letters, but not last # TODO: Write more negative test cases with assert is False statements assert contains('zyx', 'gg') is False assert contains('thisshuldreturnfalse', 'truetrue') is False assert contains('daftpunk', 'punkdaft') is False
def test_contains_with_non_matching_patterns(self): # Negative test cases (counterexamples) with non-matching patterns assert contains("abc", "z") is False # remember to test other letters assert contains("abc", "ac") is False # important to test close cases assert contains("abc", "az") is False # first letter, but not last assert contains("abc", "abz") is False # first 2 letters, but not last # TODO: Write more negative test cases with assert is False statements assert contains("dogdogdogdogdogdog", "dogg") is False assert contains("dogdogdogdogdogdogdeeeeez", "deez") is False assert contains("hellodarknessmyoldfriend", "dankness") is False
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix assert contains('aaaaaahhhhhaaaaapoleflewaaaaaaaaaaahhhh', 'ahhhh') is True assert contains('oooooooooooooooooooooooooooh', 'ooh') is True assert contains('zootoooopiaaaaooooooopiiaazzz', 'opii') is True
def test_find_index_with_non_matching_patterns(self): # Negative test cases (counterexamples) with non-matching patterns assert find_index('abc', 'z') is None # remember to test other letters assert find_index('abc', 'ac') is None # important to test close cases assert find_index('abc', 'az') is None # first letter, but not last assert find_index('abc', 'abz') is None # first 2 letters, but not last assert find_index('abc', 'zab') is None # last 2 letters, but not first assert contains( '', '' ) is False # does an empty string contain itself? My code doesn't think so.
def test_contains_with_complex_patterns(self): # Difficult test cases (examples) with complex patterns assert contains('ababc', 'ab') is True # multiple occurrences assert contains('banana', 'na') is True # multiple occurrences assert contains('ababc', 'abc') is True # overlapping prefix assert contains('bananas', 'nas') is True # overlapping prefix # My test cases assert contains('This Has Cases', 'as Case') is True assert contains('This Has Cases', 'as case') is False assert contains('This! This. This? has punctuation...', 'This?') is True