import pytest from mixer.backend.django import mixer from django.core.management import call_command from django.contrib.auth import get_user_model from django.contrib.auth.models import Group from guardian.shortcuts import assign_perm @pytest.fixture(scope="session") def django_db_setup(django_db_setup, django_db_blocker): with django_db_blocker.unblock(): call_command("loaddata", "backups.yaml") call_command("loaddata", "computers.yaml") call_command("loaddata", "core.yaml") call_command("loaddata", "devices.yaml") call_command("loaddata", "nets.yaml") call_command("loaddata", "softwares.yaml") @pytest.fixture def create_admin_user(): def _create_admin_user(): User = get_user_model() admin = User.objects.create_user("pharma-admin", "admin@pharma.com", "password") customer = mixer.blend("customers.Customer") group = Group.objects.create(name="Pharma Corp. Admin") admin.groups.add(group) assign_perm("view_customer", admin, customer) result = {} result["admin"] = admin result["customer"] = customer result["group"] = group return result return _create_admin_user