67 lines
1.6 KiB
Python
67 lines
1.6 KiB
Python
import pytest
|
|
import random
|
|
|
|
from django.db import models
|
|
|
|
from itam.models.device import Device
|
|
from itam.serializers.device import (
|
|
DeviceBaseSerializer,
|
|
DeviceModelSerializer,
|
|
DeviceViewSerializer,
|
|
)
|
|
|
|
|
|
|
|
@pytest.fixture( scope = 'class')
|
|
def model_device():
|
|
|
|
yield Device
|
|
|
|
|
|
@pytest.fixture( scope = 'class')
|
|
def kwargs_device(django_db_blocker, kwargs_centurionmodel,
|
|
model_devicemodel, kwargs_devicemodel,
|
|
model_devicetype, kwargs_devicetype,
|
|
):
|
|
|
|
with django_db_blocker.unblock():
|
|
|
|
device_model = model_devicemodel.objects.create( **kwargs_devicemodel )
|
|
|
|
device_type = model_devicetype.objects.create( **kwargs_devicetype )
|
|
|
|
kwargs = {
|
|
**kwargs_centurionmodel.copy(),
|
|
'name': 'dev-' + str( random.randint(10000, 99999) ),
|
|
'serial_number': 'dev-' + str( random.randint(1, 99999) ),
|
|
'uuid': '7318f7cc-e3e8-4680-a3bf-29d77ce' + str( random.randint(10000, 99999) ),
|
|
'device_model': device_model,
|
|
'device_type': device_type,
|
|
'config': { 'a_dev_config_key': 'a_dev_config_value'},
|
|
'inventorydate': '2025-07-31T11:51:00Z',
|
|
}
|
|
|
|
yield kwargs.copy()
|
|
|
|
with django_db_blocker.unblock():
|
|
|
|
try:
|
|
device_model.delete()
|
|
except models.deletion.ProtectedError:
|
|
pass
|
|
|
|
try:
|
|
device_type.delete()
|
|
except models.deletion.ProtectedError:
|
|
pass
|
|
|
|
|
|
@pytest.fixture( scope = 'class')
|
|
def serializer_device():
|
|
|
|
yield {
|
|
'base': DeviceBaseSerializer,
|
|
'model': DeviceModelSerializer,
|
|
'view': DeviceViewSerializer
|
|
}
|