description for function, fix day for sending email for proposal with bonus

prod
Dmitriy Shesterkin 9 years ago
parent 124d08546c
commit e0541b7316
  1. 14
      src/customer/tasks.py
  2. 17
      src/tests/test_tasks.py

@ -42,6 +42,11 @@ def check_license():
@shared_task
def delete_not_activated_users():
"""
Delete not activated users in 5 days after sending
the application for registration
:return: None
"""
today = timezone.now().date()
date_join = today - timezone.timedelta(days=5)
users = DokUser.objects.filter(profile__active=False, profile__confirmed=False).\
@ -59,10 +64,15 @@ def delete_not_activated_users():
@shared_task
def send_offer_for_get_bonus():
"""
Sending a proposal with a bonus to new users without the purchased license
on the 9th day after registration
:return: list of users(for testing)
"""
user_list = []
today = timezone.now().date()
date_join_start = today - timezone.timedelta(days=5)
date_join_end = today - timezone.timedelta(days=4)
date_join_start = today - timezone.timedelta(days=9)
date_join_end = today - timezone.timedelta(days=8)
users = DokUser.objects.filter(profile__active=True, profile__confirmed=True).\
filter(date_joined__gt=date_join_start, date_joined__lt=date_join_end)

@ -23,7 +23,12 @@ dates_lt_five = [timezone.now() - timezone.timedelta(days=5),
timezone.now() - timezone.timedelta(days=1),
timezone.now() - timezone.timedelta(days=0)]
dates_bonus = [timezone.now() - timezone.timedelta(days=5)]
dates_bonus = [timezone.now() - timezone.timedelta(days=9)]
dates_not_bonus = [timezone.now() - timezone.timedelta(days=1),
timezone.now() - timezone.timedelta(days=8),
timezone.now() - timezone.timedelta(days=10),
timezone.now() - timezone.timedelta(days=32)]
@freeze_time("2017-06-28 00:21:34", tz_offset=2)
@ -73,3 +78,13 @@ def test_send_offer_for_get_bonus(user, create_date):
user.save()
users = send_offer_for_get_bonus()
assert users == [user]
@freeze_time("2017-06-28 00:21:34", tz_offset=2)
@pytest.mark.parametrize('create_date', dates_not_bonus)
@pytest.mark.django_db
def test_send_offer_for_get_bonus_not_range_dates(user, create_date):
user.date_joined = create_date
user.save()
users = send_offer_for_get_bonus()
assert users == []

Loading…
Cancel
Save