import unittest import io import re from unittest import mock import math import student_X as main #Replace student_X with your filename class StartsWithTests(unittest.TestCase): def test_default_case(self): function = main.starts_with test = False try: incorrect = "" result = function.__doc__.strip() test = incorrect != result except: pass message = "No docstring." self.assertTrue(test, message) inputs = ('venusaur', '') correct = True if isinstance(inputs, tuple): result = function(*inputs) else: result = function(inputs) test = result == correct message = "Doesn't work when the second parameter is the empty string." self.assertTrue(test, message) inputs = ('venusaur', 'venusr') correct = False if isinstance(inputs, tuple): result = function(*inputs) else: result = function(inputs) test = result == correct message = "Doesn't return False when the first parameter doesn't start with the second." self.assertTrue(test, message) inputs = ('blastoise', 'blast') correct = True if isinstance(inputs, tuple): result = function(*inputs) else: result = function(inputs) test = result == correct message = "Doesn't work on 'blastoise' and 'blast'." self.assertTrue(test, message) inputs = ('blastoise', 'last') correct = False if isinstance(inputs, tuple): result = function(*inputs) else: result = function(inputs) test = result == correct message = "Doesn't work when the second string is a substring, but not a prefix." self.assertTrue(test, message) inputs = ('charmeleon', 'charmeleon') correct = True if isinstance(inputs, tuple): result = function(*inputs) else: result = function(inputs) test = result == correct message = "Doesn't work when the two strings are the same." self.assertTrue(test, message) inputs = ('charm', 'charmeleon') correct = False if isinstance(inputs, tuple): result = function(*inputs) else: result = function(inputs) test = result == correct message = "Doesn't work when the first string is a prefix of the second." self.assertTrue(test, message) if __name__ == "__main__": tests = StartsWithTests() tests.test_default_case()