You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
2.0 KiB
66 lines
2.0 KiB
# -*- coding: utf-8 -*-
|
|
import pytest
|
|
|
|
from django.utils import timezone
|
|
|
|
from myauth.models import DokUser, ConfirmEmail
|
|
|
|
from customer.models import UserProfile
|
|
from customer.tasks import delete_not_activated_users, send_offer_for_get_bonus
|
|
|
|
|
|
dates_gte_five = [timezone.now() - timezone.timedelta(days=100),
|
|
timezone.now() - timezone.timedelta(days=15),
|
|
timezone.now() - timezone.timedelta(days=6)]
|
|
|
|
dates_lt_five = [timezone.now() - timezone.timedelta(days=5),
|
|
timezone.now() - timezone.timedelta(days=4),
|
|
timezone.now() - timezone.timedelta(days=3),
|
|
timezone.now() - timezone.timedelta(days=2),
|
|
timezone.now() - timezone.timedelta(days=1),
|
|
timezone.now() - timezone.timedelta(days=0)]
|
|
|
|
|
|
@pytest.mark.parametrize('create_date', dates_gte_five)
|
|
@pytest.mark.django_db
|
|
def test_delete_not_activated_users_great_five_days(user, create_date):
|
|
user.is_active = False
|
|
user.date_joined = create_date
|
|
profile = user.profile
|
|
profile.active = False
|
|
profile.confirmed = False
|
|
profile.save()
|
|
user.save()
|
|
ConfirmEmail.objects.get_or_create(user=user)
|
|
|
|
delete_not_activated_users()
|
|
|
|
assert DokUser.objects.count() == 0
|
|
assert UserProfile.objects.count() == 0
|
|
assert ConfirmEmail.objects.count() == 0
|
|
|
|
|
|
@pytest.mark.parametrize('create_date', dates_lt_five)
|
|
@pytest.mark.django_db
|
|
def test_delete_not_activated_users_less_five_day(user, create_date):
|
|
user.is_active = False
|
|
user.date_joined = create_date
|
|
profile = user.profile
|
|
profile.active = False
|
|
profile.confirmed = False
|
|
profile.save()
|
|
user.save()
|
|
ConfirmEmail.objects.get_or_create(user=user)
|
|
|
|
delete_not_activated_users()
|
|
|
|
assert DokUser.objects.count() == 1
|
|
assert UserProfile.objects.count() == 1
|
|
assert ConfirmEmail.objects.count() == 1
|
|
|
|
|
|
@pytest.mark.django_db
|
|
def test_send_offer_for_get_bonus(user):
|
|
send_offer_for_get_bonus()
|
|
print(user)
|
|
pass
|
|
|