-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathdatetime_utils.py
More file actions
21 lines (18 loc) · 895 Bytes
/
datetime_utils.py
File metadata and controls
21 lines (18 loc) · 895 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import datetime
class DateTimeUtils():
@staticmethod
def get_expiration_date(expiration):
"""
Get a datetime.date representation of the expiration date
:param variable,optional expiration:
The expiration value.
Pass datetime.date for a specific date, integer for days from now, or True for immediate (yesterday)
:return datetime.date: datetime.date representation of the expiration date
"""
if isinstance(expiration, bool):
expiration_date = datetime.date.today() - datetime.timedelta(days=1)
elif isinstance(expiration, int):
expiration_date = datetime.date.today() + datetime.timedelta(days=expiration)
elif isinstance(expiration, datetime.date):
expiration_date = expiration
return expiration_date # pylint: disable=possibly-used-before-assignment