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

# -*- 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