from app import add_time from unittest import main print(add_time("11:06 PM", "2:02")) # Run unit tests automatically main(module='test_module', exit=False)
def test_two_days_later_with_day(self): actual = add_time("11:59 PM", "24:05", "Wednesday") expected = "12:04 AM, Friday (2 days later)" self.assertEqual( actual, expected, 'Expected calling "add_time()" with "2:59 AM", "24:00", "Friday" to return "12:04 AM, Friday (2 days later)"')
def test_high_duration_with_day(self): actual = add_time("8:16 PM", "466:02", "tuesday") expected = "6:18 AM, Monday (20 days later)" self.assertEqual( actual, expected, 'Expected calling "add_time()" with "8:16 PM", "466:02", "tuesday" to return "6:18 AM, Monday (20 days later)"')
def test_same_period(self): actual = add_time("3:30 PM", "2:12") expected = "5:42 PM" self.assertEqual( actual, expected, 'Expected calling "add_time()" with "3:30 PM", "2:12" to return "5:42 PM"')
def test_twenty_four_with_day(self): actual = add_time("2:59 AM", "24:00", "saturDay") expected = "2:59 AM, Sunday (next day)" self.assertEqual( actual, expected, 'Expected calling "add_time()" with "2:59 AM", "24:00", "saturDay" to return "2:59 AM, Sunday (next day)"')
def test_two_days_later(self): actual = add_time("11:59 PM", "24:05") expected = "12:04 AM (2 days later)" self.assertEqual( actual, expected, 'Expected calling "add_time()" with "11:59 PM", "24:05" to return "12:04 AM (2 days later)"')
def test_no_change(self): actual = add_time("5:01 AM", "0:00") expected = "5:01 AM" self.assertEqual(actual, expected, 'Expected adding 0:00 to return initial time.')
def test_twenty_four(self): actual = add_time("2:59 AM", "24:00") expected = "2:59 AM (next day)" self.assertEqual( actual, expected, 'Expected calling "add_time()" with "2:59 AM", "24:00" to return "2:59 AM"')
def test_period_change_at_twelve(self): actual = add_time("11:40 AM", "0:25") expected = "12:05 PM" self.assertEqual(actual, expected, 'Expected period to change from AM to PM at 12:00')
def test_next_day(self): actual = add_time("9:15 PM", "5:30") expected = "2:45 AM (next day)" self.assertEqual( actual, expected, 'Expected time to end with "(next day)" when it is the next day.')
def test_different_period(self): actual = add_time("11:55 AM", "3:12") expected = "3:07 PM" self.assertEqual( actual, expected, 'Expected calling "add_time()" with "11:55 AM", "3:12" to return "3:07 PM"')
def test_add_time(self): inputs_to_pass = ['a', '', 50] with patch('builtins.input', side_effect=inputs_to_pass): result = app.add_time() self.assertEqual(result, inputs_to_pass[2])