|
@@ -1,9 +1,7 @@
|
|
|
-import os
|
|
|
from django.contrib.auth.models import Group
|
|
|
from django.contrib.auth import get_user_model
|
|
|
from django.contrib.auth.hashers import make_password
|
|
|
from tickets.models import Ticket, TicketList
|
|
|
-from core.settings_vars import GENERATE_TEST_USERS
|
|
|
from datetime import datetime
|
|
|
|
|
|
def init_default_data():
|
|
@@ -72,80 +70,76 @@ def create_metaservice_ticket_lists():
|
|
|
|
|
|
def create_test_users():
|
|
|
"""
|
|
|
- Создает тестовых пользователей, если:
|
|
|
-
|
|
|
- - В файле settings_vers.py переменная GENERATE_TEST_USERS = True
|
|
|
- - Или была задана переменная окружения TEST_USERS=true
|
|
|
+ Создает тестовых пользователей
|
|
|
"""
|
|
|
- if os.getenv('TEST_USERS') == 'true' or GENERATE_TEST_USERS:
|
|
|
|
|
|
- User = get_user_model()
|
|
|
+ User = get_user_model()
|
|
|
+
|
|
|
+ # Создание админа
|
|
|
+ if not get_user_model().objects.filter(phone_number="11111111111").exists():
|
|
|
+ admin = get_user_model().objects.create_superuser(
|
|
|
+ 'admin',
|
|
|
+ 'admin@admin.com',
|
|
|
+ 'Sharix!',
|
|
|
+ phone_number="11111111111"
|
|
|
+ )
|
|
|
+
|
|
|
+ password = make_password("sharix-open-test")
|
|
|
+ test_group = Group.objects.get(pk=99)
|
|
|
+
|
|
|
+ # Группа, в которой надо создать пользователя и их количество
|
|
|
+ test_users = [
|
|
|
+ ('METASERVICE-ADMIN', 1),
|
|
|
+ ('METASERVICE-SUPERVISOR', 3),
|
|
|
+ ('METASERVICE-SUPPORT', 3),
|
|
|
+ ('METASERVICE-TECHSUPPORT', 3),
|
|
|
+
|
|
|
+ ('PARTNER-ADMIN', 1),
|
|
|
+ ('PARTNER-SUPERVISOR', 3),
|
|
|
+ ('PARTNER-SUPPORT', 3),
|
|
|
+ ('PARTNER-TECHSUPPORT', 3),
|
|
|
+
|
|
|
+ ('PROVIDER', 3),
|
|
|
+ ('CLIENT', 3),
|
|
|
+ ('GUEST', 3)
|
|
|
+ ]
|
|
|
+
|
|
|
+ for test_user in test_users:
|
|
|
+ group_name = test_user[0]
|
|
|
+ group = Group.objects.get(name=group_name)
|
|
|
|
|
|
- # Создание админа
|
|
|
- if not get_user_model().objects.filter(phone_number="11111111111").exists():
|
|
|
- admin = get_user_model().objects.create_superuser(
|
|
|
- 'admin',
|
|
|
- 'admin@admin.com',
|
|
|
- 'Sharix!',
|
|
|
- phone_number="11111111111"
|
|
|
+ for i in range(1, test_user[1] + 1):
|
|
|
+ user, created = User.objects.get_or_create(
|
|
|
+ phone_number=f"{group.pk}0{i}",
|
|
|
+ defaults={
|
|
|
+ 'last_name': i,
|
|
|
+ 'first_name': group_name,
|
|
|
+ 'email': f"test-{group_name.lower()}-{i}@domain.org",
|
|
|
+ 'username': f"test-{group_name.lower()}-{i}",
|
|
|
+ 'middle_name': "Test",
|
|
|
+ 'password': password
|
|
|
+ }
|
|
|
)
|
|
|
|
|
|
- password = make_password("sharix-open-test")
|
|
|
- test_group = Group.objects.get(pk=99)
|
|
|
-
|
|
|
- # Группа, в которой надо создать пользователя и их количество
|
|
|
- test_users = [
|
|
|
- ('METASERVICE-ADMIN', 1),
|
|
|
- ('METASERVICE-SUPERVISOR', 3),
|
|
|
- ('METASERVICE-SUPPORT', 3),
|
|
|
- ('METASERVICE-TECHSUPPORT', 3),
|
|
|
-
|
|
|
- ('PARTNER-ADMIN', 1),
|
|
|
- ('PARTNER-SUPERVISOR', 3),
|
|
|
- ('PARTNER-SUPPORT', 3),
|
|
|
- ('PARTNER-TECHSUPPORT', 3),
|
|
|
-
|
|
|
- ('PROVIDER', 3),
|
|
|
- ('CLIENT', 3),
|
|
|
- ('GUEST', 3)
|
|
|
- ]
|
|
|
-
|
|
|
- for test_user in test_users:
|
|
|
- group_name = test_user[0]
|
|
|
- group = Group.objects.get(name=group_name)
|
|
|
-
|
|
|
- for i in range(1, test_user[1] + 1):
|
|
|
- user, created = User.objects.get_or_create(
|
|
|
- phone_number=f"{group.pk}0{i}",
|
|
|
- defaults={
|
|
|
- 'last_name': i,
|
|
|
- 'first_name': group_name,
|
|
|
- 'email': f"test-{group_name.lower()}-{i}@domain.org",
|
|
|
- 'username': f"test-{group_name.lower()}-{i}",
|
|
|
- 'middle_name': "Test",
|
|
|
- 'password': password
|
|
|
- }
|
|
|
+ if created:
|
|
|
+ user.groups.add(
|
|
|
+ test_group,
|
|
|
+ group
|
|
|
)
|
|
|
|
|
|
- if created:
|
|
|
- user.groups.add(
|
|
|
- test_group,
|
|
|
- group
|
|
|
- )
|
|
|
-
|
|
|
- # Создание тикета о создании пользователей
|
|
|
- if Ticket.objects.all().exists():
|
|
|
- # test-metaservice-admin-1
|
|
|
- user = get_user_model().objects.filter(phone_number=2101).get()
|
|
|
- ticket_list = TicketList.objects.get(pk=2103)
|
|
|
-
|
|
|
- Ticket.objects.create(
|
|
|
- title=f"Создание тестовых пользователей",
|
|
|
- ticket_list=ticket_list,
|
|
|
- ticket_type=1, # ST_REQUEST
|
|
|
- due_date=datetime.now().date(),
|
|
|
- created_by=user,
|
|
|
- note=f"""
|
|
|
- Успешное создание тестовых пользователей
|
|
|
- """
|
|
|
- )
|
|
|
+ # Создание тикета о создании пользователей
|
|
|
+ if not Ticket.objects.all().exists():
|
|
|
+ # test-metaservice-admin-1
|
|
|
+ user = get_user_model().objects.filter(phone_number=2101).get()
|
|
|
+ ticket_list = TicketList.objects.get(pk=2103)
|
|
|
+
|
|
|
+ Ticket.objects.create(
|
|
|
+ title=f"Создание тестовых пользователей",
|
|
|
+ ticket_list=ticket_list,
|
|
|
+ ticket_type=1, # ST_REQUEST
|
|
|
+ due_date=datetime.now().date(),
|
|
|
+ created_by=user,
|
|
|
+ note=f"""
|
|
|
+ Успешное создание тестовых пользователей
|
|
|
+ """
|
|
|
+ )
|