|
|
|
@ -1,9 +1,11 @@ |
|
|
|
# -*- coding: utf-8 -*- |
|
|
|
# -*- coding: utf-8 -*- |
|
|
|
|
|
|
|
import json |
|
|
|
|
|
|
|
|
|
|
|
from datetime import datetime, timedelta |
|
|
|
from datetime import timedelta |
|
|
|
|
|
|
|
|
|
|
|
from django.test import TestCase |
|
|
|
from django.test import TestCase |
|
|
|
from django.utils.timezone import now |
|
|
|
from django.utils.timezone import now |
|
|
|
|
|
|
|
from django.shortcuts import reverse |
|
|
|
from factory.faker import Faker |
|
|
|
from factory.faker import Faker |
|
|
|
|
|
|
|
|
|
|
|
from project.tests.factories import UserFactory, CourseFactory |
|
|
|
from project.tests.factories import UserFactory, CourseFactory |
|
|
|
@ -56,11 +58,25 @@ class AutoAddingUserBonusTestCase(TestCase): |
|
|
|
def test_adding_user_bonuses_after_fill_profile(self): |
|
|
|
def test_adding_user_bonuses_after_fill_profile(self): |
|
|
|
user = UserFactory.create(role=User.USER_ROLE, first_name='', last_name='', phone='') |
|
|
|
user = UserFactory.create(role=User.USER_ROLE, first_name='', last_name='', phone='') |
|
|
|
self.assertEqual(user.bonus, 0, 'При создании есть бонусы') |
|
|
|
self.assertEqual(user.bonus, 0, 'При создании есть бонусы') |
|
|
|
|
|
|
|
self.client.force_login(user) |
|
|
|
|
|
|
|
data = {k: user.__dict__[k] for k in ['email', 'slug', 'child_first_name', |
|
|
|
|
|
|
|
'child_last_name', 'child_birthday', 'child_gender', 'city', |
|
|
|
|
|
|
|
'country', 'birthday', 'gender', 'about', 'instagram', 'facebook', |
|
|
|
|
|
|
|
'twitter', 'pinterest', 'youtube', 'vkontakte', 'site']} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
data.update({ |
|
|
|
|
|
|
|
'first_name': Faker('first_name').generate({}), |
|
|
|
|
|
|
|
'last_name': Faker('last_name').generate({}), |
|
|
|
|
|
|
|
'phone': '+79123456789', |
|
|
|
|
|
|
|
'old_password': '', |
|
|
|
|
|
|
|
'new_password1': '', |
|
|
|
|
|
|
|
'new_password2': '', |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
for k, v in data.items(): |
|
|
|
|
|
|
|
if v is None: |
|
|
|
|
|
|
|
data[k] = '' |
|
|
|
|
|
|
|
self.client.post(reverse('user-edit-profile'), data) |
|
|
|
|
|
|
|
|
|
|
|
user.first_name = Faker('first_name').generate({}) |
|
|
|
|
|
|
|
user.last_name = Faker('last_name').generate({}) |
|
|
|
|
|
|
|
user.phone = '+7123456789' |
|
|
|
|
|
|
|
user.save() |
|
|
|
|
|
|
|
del user.__dict__['bonus'] |
|
|
|
del user.__dict__['bonus'] |
|
|
|
self.assertEqual(user.bonus, UserBonus.AMOUNT_FILL_PROFILE, 'Неверное кол-во бонусов после заполнения профиля') |
|
|
|
self.assertEqual(user.bonus, UserBonus.AMOUNT_FILL_PROFILE, 'Неверное кол-во бонусов после заполнения профиля') |
|
|
|
|
|
|
|
|
|
|
|
@ -70,9 +86,10 @@ class AutoAddingUserBonusTestCase(TestCase): |
|
|
|
def test_adding_user_bonuses_after_fill_review_url(self): |
|
|
|
def test_adding_user_bonuses_after_fill_review_url(self): |
|
|
|
user = UserFactory.create(role=User.USER_ROLE, first_name='', last_name='', phone='') |
|
|
|
user = UserFactory.create(role=User.USER_ROLE, first_name='', last_name='', phone='') |
|
|
|
self.assertEqual(user.bonus, 0, 'При создании есть бонусы') |
|
|
|
self.assertEqual(user.bonus, 0, 'При создании есть бонусы') |
|
|
|
|
|
|
|
self.client.force_login(user) |
|
|
|
user.review_url = 'http://youtube.com/review_url' |
|
|
|
self.client.patch('/api/v1/users/%d/' % user.id, json.dumps({ |
|
|
|
user.save() |
|
|
|
'review_url': 'http://youtube.com/review_url', |
|
|
|
|
|
|
|
}), 'application/json') |
|
|
|
del user.__dict__['bonus'] |
|
|
|
del user.__dict__['bonus'] |
|
|
|
self.assertEqual(user.bonus, UserBonus.AMOUNT_HAVE_REVIEW, 'Неверное кол-во бонусов после заполнения ссылки на отзыв') |
|
|
|
self.assertEqual(user.bonus, UserBonus.AMOUNT_HAVE_REVIEW, 'Неверное кол-во бонусов после заполнения ссылки на отзыв') |
|
|
|
|
|
|
|
|
|
|
|
|