added get_current method

This commit is contained in:
Matsumoto Taichi
2012-09-25 23:26:05 -04:00
parent 9f3ce1af03
commit 58cd3cec24
2 changed files with 16 additions and 0 deletions

View File

@@ -117,6 +117,11 @@ class croniter(object):
def get_prev(self, ret_type=float):
return self._get_next(ret_type, is_prev=True)
def get_current(self, ret_type=float):
if ret_type == datetime.datetime:
return datetime.datetime.fromtimestamp(self.cur)
return self.cur
def _get_next(self, ret_type=float, is_prev=False):
expanded = self.expanded[:]

View File

@@ -289,6 +289,17 @@ class CroniterTest(unittest.TestCase):
self.assertEqual(prev1.day, 12)
self.assertEqual(prev1.hour, 23)
self.assertEqual(prev1.minute, 59)
def testGetCurrent(self):
base = datetime(2012, 9, 25, 11, 24)
itr = croniter('* * * * *', base)
res = itr.get_current(datetime)
self.assertEqual(base.year, res.year)
self.assertEqual(base.month, res.month)
self.assertEqual(base.day, res.day)
self.assertEqual(base.hour, res.hour)
self.assertEqual(base.minute, res.minute)
if __name__ == '__main__':
unittest.main()