def check_day(*args, **kwargs): comp = date_generator_func() appropriate_day = get_business_day_of_month_after(comp.year, comp.month, day) if comp.date() == appropriate_day: return f(*args, **kwargs) else: pass
def testBusinessDaysAfter(self): # normal self.assertEqual(date(2011, 8, 1), get_business_day_of_month_after(2011, 8, 1)) self.assertEqual(date(2011, 8, 5), get_business_day_of_month_after(2011, 8, 5)) self.assertEqual(date(2011, 8, 8), get_business_day_of_month_after(2011, 8, 6)) self.assertEqual(date(2011, 8, 8), get_business_day_of_month_after(2011, 8, 7)) self.assertEqual(date(2011, 8, 8), get_business_day_of_month_after(2011, 8, 8)) # random self.assertEqual(date(2011, 8, 26), get_business_day_of_month_after(2011, 8, 26)) self.assertEqual(date(2011, 8, 29), get_business_day_of_month_after(2011, 8, 27)) self.assertEqual(date(2011, 10, 17), get_business_day_of_month_after(2011, 10, 15)) self.assertEqual(date(2011, 12, 20), get_business_day_of_month_after(2011, 12, 20)) # fail try: get_business_day_of_month_after(2011, 12, 31) self.fail("previous call should have failed") except ValueError: pass try: get_business_day_of_month_after(2011, 2, 30) self.fail("previous call should have failed") except ValueError: pass