1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Add tests for dynamic choices

This commit is contained in:
Jeremy Stretch
2020-01-14 16:38:14 -05:00
parent 857e04e90b
commit 8df53eac91
2 changed files with 13 additions and 3 deletions

View File

@ -30,8 +30,12 @@ class ChoicesTest(APITestCase):
# Cable
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:termination_a_type')), )
# self.assertEqual(choices_to_dict(response.data.get('cable:termination_b_type')), )
content_types = ContentType.objects.filter(model__in=CABLE_TERMINATION_TYPES)
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())
# Console ports

View File

@ -8,10 +8,12 @@ from rest_framework import status
from dcim.models import Device, DeviceRole, DeviceType, Manufacturer, Platform, Rack, RackGroup, RackRole, Region, Site
from extras.api.views import ScriptViewSet
from extras.choices import *
from extras.constants import GRAPH_MODELS
from extras.models import ConfigContext, Graph, ExportTemplate, Tag
from extras.scripts import BooleanVar, IntegerVar, Script, StringVar
from tenancy.models import Tenant, TenantGroup
from utilities.testing import APITestCase, choices_to_dict
from utilities.utils import model_names_to_filter_dict
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())
# 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())
# ObjectChange