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

Clean up GraphQL object types & tests

This commit is contained in:
jeremystretch
2021-06-29 12:55:17 -04:00
parent 79614ed2cf
commit ef3cb9544a
6 changed files with 88 additions and 11 deletions

View File

@ -45,6 +45,12 @@ class CableType(TaggedObjectType):
fields = '__all__'
filterset_class = filtersets.CableFilterSet
def resolve_type(self, info):
return self.type or None
def resolve_length_unit(self, info):
return self.length_unit or None
class ConsolePortType(TaggedObjectType):
@ -53,6 +59,9 @@ class ConsolePortType(TaggedObjectType):
fields = '__all__'
filterset_class = filtersets.ConsolePortFilterSet
def resolve_type(self, info):
return self.type or None
class ConsolePortTemplateType(BaseObjectType):
@ -61,6 +70,9 @@ class ConsolePortTemplateType(BaseObjectType):
fields = '__all__'
filterset_class = filtersets.ConsolePortTemplateFilterSet
def resolve_type(self, info):
return self.type or None
class ConsoleServerPortType(TaggedObjectType):
@ -69,6 +81,9 @@ class ConsoleServerPortType(TaggedObjectType):
fields = '__all__'
filterset_class = filtersets.ConsoleServerPortFilterSet
def resolve_type(self, info):
return self.type or None
class ConsoleServerPortTemplateType(BaseObjectType):
@ -77,6 +92,9 @@ class ConsoleServerPortTemplateType(BaseObjectType):
fields = '__all__'
filterset_class = filtersets.ConsoleServerPortTemplateFilterSet
def resolve_type(self, info):
return self.type or None
class DeviceType(TaggedObjectType):
@ -85,6 +103,9 @@ class DeviceType(TaggedObjectType):
fields = '__all__'
filterset_class = filtersets.DeviceFilterSet
def resolve_face(self, info):
return self.face or None
class DeviceBayType(TaggedObjectType):
@ -117,6 +138,9 @@ class DeviceTypeType(TaggedObjectType):
fields = '__all__'
filterset_class = filtersets.DeviceTypeFilterSet
def resolve_subdevice_role(self, info):
return self.subdevice_role or None
class FrontPortType(TaggedObjectType):
@ -141,6 +165,9 @@ class InterfaceType(TaggedObjectType):
fields = '__all__'
filterset_class = filtersets.InterfaceFilterSet
def resolve_mode(self, info):
return self.mode or None
class InterfaceTemplateType(BaseObjectType):
@ -150,7 +177,7 @@ class InterfaceTemplateType(BaseObjectType):
filterset_class = filtersets.InterfaceTemplateFilterSet
class InventoryItemType(ObjectType):
class InventoryItemType(TaggedObjectType):
class Meta:
model = models.InventoryItem
@ -158,7 +185,7 @@ class InventoryItemType(ObjectType):
filterset_class = filtersets.InventoryItemFilterSet
class LocationType(TaggedObjectType):
class LocationType(ObjectType):
class Meta:
model = models.Location
@ -197,6 +224,12 @@ class PowerOutletType(TaggedObjectType):
fields = '__all__'
filterset_class = filtersets.PowerOutletFilterSet
def resolve_feed_leg(self, info):
return self.feed_leg or None
def resolve_type(self, info):
return self.type or None
class PowerOutletTemplateType(BaseObjectType):
@ -205,6 +238,12 @@ class PowerOutletTemplateType(BaseObjectType):
fields = '__all__'
filterset_class = filtersets.PowerOutletTemplateFilterSet
def resolve_feed_leg(self, info):
return self.feed_leg or None
def resolve_type(self, info):
return self.type or None
class PowerPanelType(TaggedObjectType):
@ -221,6 +260,9 @@ class PowerPortType(TaggedObjectType):
fields = '__all__'
filterset_class = filtersets.PowerPortFilterSet
def resolve_type(self, info):
return self.type or None
class PowerPortTemplateType(BaseObjectType):
@ -229,6 +271,9 @@ class PowerPortTemplateType(BaseObjectType):
fields = '__all__'
filterset_class = filtersets.PowerPortTemplateFilterSet
def resolve_type(self, info):
return self.type or None
class RackType(TaggedObjectType):
@ -237,6 +282,12 @@ class RackType(TaggedObjectType):
fields = '__all__'
filterset_class = filtersets.RackFilterSet
def resolve_type(self, info):
return self.type or None
def resolve_outer_unit(self, info):
return self.outer_unit or None
class RackReservationType(TaggedObjectType):

View File

@ -1005,7 +1005,11 @@ class DeviceTest(APIViewTestCases.GraphQLTestCase, APIViewTestCases.APIViewTestC
self.assertHttpStatus(response, status.HTTP_400_BAD_REQUEST)
class ConsolePortTest(Mixins.ComponentTraceMixin, APIViewTestCases.APIViewTestCase):
class ConsolePortTest(
Mixins.ComponentTraceMixin,
APIViewTestCases.GraphQLTestCase,
APIViewTestCases.APIViewTestCase
):
model = ConsolePort
brief_fields = ['_occupied', 'cable', 'device', 'display', 'id', 'name', 'url']
bulk_update_data = {
@ -1044,7 +1048,11 @@ class ConsolePortTest(Mixins.ComponentTraceMixin, APIViewTestCases.APIViewTestCa
]
class ConsoleServerPortTest(Mixins.ComponentTraceMixin, APIViewTestCases.APIViewTestCase):
class ConsoleServerPortTest(
Mixins.ComponentTraceMixin,
APIViewTestCases.GraphQLTestCase,
APIViewTestCases.APIViewTestCase
):
model = ConsoleServerPort
brief_fields = ['_occupied', 'cable', 'device', 'display', 'id', 'name', 'url']
bulk_update_data = {
@ -1083,7 +1091,11 @@ class ConsoleServerPortTest(Mixins.ComponentTraceMixin, APIViewTestCases.APIView
]
class PowerPortTest(Mixins.ComponentTraceMixin, APIViewTestCases.APIViewTestCase):
class PowerPortTest(
Mixins.ComponentTraceMixin,
APIViewTestCases.GraphQLTestCase,
APIViewTestCases.APIViewTestCase
):
model = PowerPort
brief_fields = ['_occupied', 'cable', 'device', 'display', 'id', 'name', 'url']
bulk_update_data = {
@ -1122,7 +1134,11 @@ class PowerPortTest(Mixins.ComponentTraceMixin, APIViewTestCases.APIViewTestCase
]
class PowerOutletTest(Mixins.ComponentTraceMixin, APIViewTestCases.APIViewTestCase):
class PowerOutletTest(
Mixins.ComponentTraceMixin,
APIViewTestCases.GraphQLTestCase,
APIViewTestCases.APIViewTestCase
):
model = PowerOutlet
brief_fields = ['_occupied', 'cable', 'device', 'display', 'id', 'name', 'url']
bulk_update_data = {
@ -1161,7 +1177,11 @@ class PowerOutletTest(Mixins.ComponentTraceMixin, APIViewTestCases.APIViewTestCa
]
class InterfaceTest(Mixins.ComponentTraceMixin, APIViewTestCases.APIViewTestCase):
class InterfaceTest(
Mixins.ComponentTraceMixin,
APIViewTestCases.GraphQLTestCase,
APIViewTestCases.APIViewTestCase
):
model = Interface
brief_fields = ['_occupied', 'cable', 'device', 'display', 'id', 'name', 'url']
bulk_update_data = {

View File

@ -65,7 +65,7 @@ class TagType(BaseObjectType):
class Meta:
model = models.Tag
fields = '__all__'
exclude = ('extras_taggeditem_items',)
filterset_class = filtersets.TagFilterSet

View File

@ -30,6 +30,9 @@ class IPAddressType(TaggedObjectType):
fields = '__all__'
filterset_class = filtersets.IPAddressFilterSet
def resolve_role(self, info):
return self.role or None
class PrefixType(TaggedObjectType):

View File

@ -7,7 +7,7 @@ __all__ = (
)
class TenantType(ObjectType):
class TenantType(TaggedObjectType):
class Meta:
model = models.Tenant
@ -15,7 +15,7 @@ class TenantType(ObjectType):
filterset_class = filtersets.TenantFilterSet
class TenantGroupType(TaggedObjectType):
class TenantGroupType(ObjectType):
class Meta:
model = models.TenantGroup

View File

@ -42,9 +42,12 @@ class VirtualMachineType(TaggedObjectType):
filterset_class = filtersets.VirtualMachineFilterSet
class VMInterfaceType(ObjectType):
class VMInterfaceType(TaggedObjectType):
class Meta:
model = models.VMInterface
fields = '__all__'
filterset_class = filtersets.VMInterfaceFilterSet
def resolve_mode(self, info):
return self.mode or None