def test_within_datetime_bounds(self): from datetime import datetime, timedelta bound_low = datetime(2009, 11, 1, 0, 0) bound_high = datetime(2009, 11, 1, 23, 59) try: self.assertEqual(datetime_to_ceiling(bound_low, 3.0).hour, 3) self.assertEqual(datetime_to_ceiling(bound_high, 3.0).hour, 23) self.assertEqual(datetime_to_ceiling(bound_high, 3.0).minute, 59) except ValueError, e: self.fail()
def test_returns_predicted_time(self): from datetime import datetime test_values = ( 3, 3, 3, # [0-2] -> 3 6, 6, 6, # [3-5] -> 6 9, 9, 9, # [6-8] -> 9 12,12,12, # [8-11] -> 12 15,15,15, # [12-14] -> 15 18,18,18, # ... 21,21,21, 23,23,23, ) for (_out, _in) in zip(test_values, range(0, 24)): when = datetime(2009, 11, 1, _in, 0) self.assertEqual(datetime_to_ceiling(when, 3.0).hour, _out)