Adding detect-raw-datetime-manipulation option

This commit is contained in:
Asim Goheer 2018-11-14 14:14:39 -08:00
parent 2dbaced650
commit 6932b83509
8 changed files with 161 additions and 1 deletions

View file

@ -0,0 +1,27 @@
import datetime
from datetime import timedelta
def dummy_func(inp):
print(inp)
def move_time_forward():
now = datetime.datetime.now()
# Check commented out lines
# now += timedelta(days=1)
# now += datetime.timedelta(weeks=1)
#
# now -= timedelta(weeks=1)
# now -= timedelta(weeks=2)
#
# now = now.replace(hour=2)
# now = now.replace(tzinfo=None)
# now = now.replace(hour=1, tzinfo=pytz.utc)
# Test regular usage of timedelta & datetime
dummy_func(timedelta(days=1))
dummy_func(datetime.datetime(2018, 10, 11, 2, 3, 4, 450000))
print(now)

View file

@ -0,0 +1,37 @@
import datetime
from datetime import timedelta
import pytz
def move_time_forward():
now = datetime.datetime.now()
timezone = pytz.utc
# 1
now = datetime.datetime(now.year, now.month, now.day, hour=8, minute=0, tzinfo=timezone)
# 2
now += timedelta(days=1)
# 3
now += datetime.timedelta(weeks=1)
# 4
now = now + timedelta(seconds=1)
# 5
now -= datetime.timedelta(weeks=1)
# 6
now -= timedelta(weeks=2)
# 7
now = now - timedelta(seconds=1)
now = now.replace(hour=2)
# 8
now = now.replace(tzinfo=None)
# 9
now = now.replace(hour=1, tzinfo=pytz.utc)
# 10
now = datetime.datetime(2018, 10, 11, 2, 3, 4, 450000, tzinfo=pytz.utc)
print(now)

View file

@ -0,0 +1,20 @@
import datetime
from datetime import timedelta
import pytz
def move_time_forward():
now = datetime.datetime.now()
now += timedelta(days=1) # safe_dt_op
now += datetime.timedelta(weeks=1) # safe_dt_op
now -= timedelta(weeks=1) # safe_dt_op
now -= timedelta(weeks=2) # safe_dt_op
now = now.replace(hour=2)
now = now.replace(tzinfo=None) # safe_dt_op
now = now.replace(hour=1, tzinfo=pytz.utc) # safe_dt_op
print(now)