Source code for wheezy.caching.utils

""" ``utils`` module.
"""

from datetime import timedelta


def total_seconds(delta):
[docs] """ Returns a total number of seconds for the given delta. ``delta`` can be ``datetime.timedelta``. >>> total_seconds(timedelta(hours=2)) 7200 or int: >>> total_seconds(100) 100 otherwise raise ``TypeError``. >>> total_seconds('100') # doctest: +ELLIPSIS Traceback (most recent call last): ... TypeError: ... """ if isinstance(delta, int): return delta elif isinstance(delta, timedelta): return delta.seconds + delta.days * 86400 else: raise TypeError('Expecting type datetime.timedelta ' 'or int for seconds')