mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-24 17:38:37 -06:00
Add tests for dynamic choices
This commit is contained in:
parent
857e04e90b
commit
8df53eac91
@ -30,8 +30,12 @@ class ChoicesTest(APITestCase):
|
|||||||
# Cable
|
# Cable
|
||||||
self.assertEqual(choices_to_dict(response.data.get('cable:length_unit')), CableLengthUnitChoices.as_dict())
|
self.assertEqual(choices_to_dict(response.data.get('cable:length_unit')), CableLengthUnitChoices.as_dict())
|
||||||
self.assertEqual(choices_to_dict(response.data.get('cable:status')), CableStatusChoices.as_dict())
|
self.assertEqual(choices_to_dict(response.data.get('cable:status')), CableStatusChoices.as_dict())
|
||||||
# self.assertEqual(choices_to_dict(response.data.get('cable:termination_a_type')), )
|
content_types = ContentType.objects.filter(model__in=CABLE_TERMINATION_TYPES)
|
||||||
# self.assertEqual(choices_to_dict(response.data.get('cable:termination_b_type')), )
|
cable_termination_choices = {
|
||||||
|
"{}.{}".format(ct.app_label, ct.model): ct.name for ct in content_types
|
||||||
|
}
|
||||||
|
self.assertEqual(choices_to_dict(response.data.get('cable:termination_a_type')), cable_termination_choices)
|
||||||
|
self.assertEqual(choices_to_dict(response.data.get('cable:termination_b_type')), cable_termination_choices)
|
||||||
self.assertEqual(choices_to_dict(response.data.get('cable:type')), CableTypeChoices.as_dict())
|
self.assertEqual(choices_to_dict(response.data.get('cable:type')), CableTypeChoices.as_dict())
|
||||||
|
|
||||||
# Console ports
|
# Console ports
|
||||||
|
@ -8,10 +8,12 @@ from rest_framework import status
|
|||||||
from dcim.models import Device, DeviceRole, DeviceType, Manufacturer, Platform, Rack, RackGroup, RackRole, Region, Site
|
from dcim.models import Device, DeviceRole, DeviceType, Manufacturer, Platform, Rack, RackGroup, RackRole, Region, Site
|
||||||
from extras.api.views import ScriptViewSet
|
from extras.api.views import ScriptViewSet
|
||||||
from extras.choices import *
|
from extras.choices import *
|
||||||
|
from extras.constants import GRAPH_MODELS
|
||||||
from extras.models import ConfigContext, Graph, ExportTemplate, Tag
|
from extras.models import ConfigContext, Graph, ExportTemplate, Tag
|
||||||
from extras.scripts import BooleanVar, IntegerVar, Script, StringVar
|
from extras.scripts import BooleanVar, IntegerVar, Script, StringVar
|
||||||
from tenancy.models import Tenant, TenantGroup
|
from tenancy.models import Tenant, TenantGroup
|
||||||
from utilities.testing import APITestCase, choices_to_dict
|
from utilities.testing import APITestCase, choices_to_dict
|
||||||
|
from utilities.utils import model_names_to_filter_dict
|
||||||
|
|
||||||
|
|
||||||
class ChoicesTest(APITestCase):
|
class ChoicesTest(APITestCase):
|
||||||
@ -27,7 +29,11 @@ class ChoicesTest(APITestCase):
|
|||||||
self.assertEqual(choices_to_dict(response.data.get('export-template:template_language')), ExportTemplateLanguageChoices.as_dict())
|
self.assertEqual(choices_to_dict(response.data.get('export-template:template_language')), ExportTemplateLanguageChoices.as_dict())
|
||||||
|
|
||||||
# Graph
|
# Graph
|
||||||
# self.assertEqual(choices_to_dict(response.data.get('graph:type')), )
|
content_types = ContentType.objects.filter(**model_names_to_filter_dict(GRAPH_MODELS))
|
||||||
|
graph_type_choices = {
|
||||||
|
"{}.{}".format(ct.app_label, ct.model): ct.name for ct in content_types
|
||||||
|
}
|
||||||
|
self.assertEqual(choices_to_dict(response.data.get('graph:type')), graph_type_choices)
|
||||||
self.assertEqual(choices_to_dict(response.data.get('graph:template_language')), ExportTemplateLanguageChoices.as_dict())
|
self.assertEqual(choices_to_dict(response.data.get('graph:template_language')), ExportTemplateLanguageChoices.as_dict())
|
||||||
|
|
||||||
# ObjectChange
|
# ObjectChange
|
||||||
|
Loading…
Reference in New Issue
Block a user