network_inventory/src/conftest.py

37 lines
1.2 KiB
Python

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