import unittest # Begin Function_2 class My_Time: day = 86400 # seconds months = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] reg_yr = 365 leap_yr = 366 def is_leapyr(year): if year % 4 == 0: if year % 100 != 0 or year % 400 == 0: return True return False def my_datetime(num_sec): my_time = My_Time() months = 1 start_year = 1970 year = start_year days = num_sec // my_time.day + 1 while days > 365: if is_leapyr(year): if days <= 366: break days -= my_time.leap_yr else: days -= my_time.reg_yr year += 1 if is_leapyr(year): my_time.months[1] = 29 for i in range(len(my_time.months)): if days > my_time.months[i]: days -= my_time.months[i] else: months = i + 1 break return f"{months:02}-{days:02}-{year}" # End function_2 # Commenting out passing tests, # causes previously failing tests to pass. class TestCase(unittest.TestCase): # Unit testing for function 2, my_datetime, below def test_my_datetime_1(self): self.assertEqual(my_datetime(0), "01-01-1970") def test_my_datetime_2(self): self.assertEqual(my_datetime(5097599), "02-28-1970") def test_my_datetime_3(self): self.assertEqual(my_datetime(5097600), "03-01-1970") def test_my_datetime_4(self): self.assertEqual(my_datetime(31535999), "12-31-1970") def test_my_datetime_5(self): self.assertEqual(my_datetime(31536000), "01-01-1971") def test_my_datetime_6(self): self.assertEqual(my_datetime(36633599), "02-28-1971") def test_my_datetime_7(self): self.assertEqual(my_datetime(36633600), "03-01-1971") def test_my_datetime_8(self): self.assertEqual(my_datetime(63071999), "12-31-1971") def test_my_datetime_9(self): self.assertEqual(my_datetime(63072000), "01-01-1972") def test_my_datetime_10(self): self.assertEqual(my_datetime(68169599), "02-28-1972") def test_my_datetime_11(self): self.assertEqual(my_datetime(68169600), "02-29-1972") def test_my_datetime_12(self): self.assertEqual(my_datetime(68256000), "03-01-1972") def test_my_datetime_13(self): self.assertEqual(my_datetime(94694399), "12-31-1972") def test_my_datetime_14(self): self.assertEqual(my_datetime(94694400), "01-01-1973") def test_my_datetime_15(self): self.assertEqual(my_datetime(99791999), "02-28-1973") def test_my_datetime_16(self): self.assertEqual(my_datetime(194400000), "02-29-1976") def test_my_datetime_17(self): self.assertEqual(my_datetime(315532800), "01-01-1980") def test_my_datetime_18(self): self.assertEqual(my_datetime(320630400), "02-29-1980") def test_my_datetime_19(self): self.assertEqual(my_datetime(631152000), "01-01-1990") def test_my_datetime_20(self): self.assertEqual(my_datetime(946684799), "12-31-1999") def test_my_datetime_21(self): self.assertEqual(my_datetime(946684800), "01-01-2000") def test_my_datetime_22(self): self.assertEqual(my_datetime(951782399), "02-28-2000") def test_my_datetime_23(self): self.assertEqual(my_datetime(951782400), "02-29-2000") def test_my_datetime_24(self): self.assertEqual(my_datetime(978220800), "12-31-2000") def test_my_datetime_25(self): self.assertEqual(my_datetime(978307200), "01-01-2001") def test_my_datetime_26(self): self.assertEqual(my_datetime(983318400), "02-28-2001") def test_my_datetime_27(self): self.assertEqual(my_datetime(983404800), "03-01-2001") def test_my_datetime_28(self): self.assertEqual(my_datetime(1078012800), "02-29-2004") def test_my_datetime_29(self): self.assertEqual(my_datetime(7258118399), "12-31-2199") def test_my_datetime_30(self): self.assertEqual(my_datetime(7258118400), "01-01-2200") def test_my_datetime_31(self): self.assertEqual(my_datetime(7263215999), "02-28-2200") def test_my_datetime_32(self): self.assertEqual(my_datetime(7263216000), "03-01-2200") def test_my_datetime_33(self): self.assertEqual(my_datetime(10413791999), "12-31-2299") def test_my_datetime_34(self): self.assertEqual(my_datetime(10413792000), "01-01-2300") def test_my_datetime_35(self): self.assertEqual(my_datetime(13569465599), "12-31-2399") def test_my_datetime_36(self): self.assertEqual(my_datetime(13574649599), "02-29-2400") def test_my_datetime_37(self): self.assertEqual(my_datetime(13574649600), "03-01-2400") def test_my_datetime_39(self): self.assertEqual(my_datetime(16725225599), "12-31-2499") def test_my_datetime_40(self): self.assertEqual(my_datetime(16725225600), "01-01-2500") def test_my_datetime_41(self): self.assertEqual(my_datetime(16856553599), "02-29-2504") def test_my_datetime_42(self): self.assertEqual(my_datetime(16982783999), "02-29-2508") def test_my_datetime_43(self): self.assertEqual(my_datetime(19886083199), "03-01-2600") def test_my_datetime_44(self): self.assertEqual(my_datetime(253402300799), "12-31-9999") # End testing for function2 if __name__ == '__main__': unittest.main()