mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
Tests cleanup
This commit is contained in:
@ -68,15 +68,15 @@ class PathEndpointMixin(object):
|
|||||||
break
|
break
|
||||||
|
|
||||||
# Serialize each object
|
# Serialize each object
|
||||||
serializer_a = get_serializer_for_model(near_end, prefix='Nested')
|
serializer_a = get_serializer_for_model(near_end[0], prefix='Nested')
|
||||||
x = serializer_a(near_end, context={'request': request}).data
|
x = serializer_a(near_end, many=True, context={'request': request}).data
|
||||||
if cable is not None:
|
if cable is not None:
|
||||||
y = serializers.TracedCableSerializer(cable, context={'request': request}).data
|
y = serializers.TracedCableSerializer(cable[0], context={'request': request}).data
|
||||||
else:
|
else:
|
||||||
y = None
|
y = None
|
||||||
if far_end is not None:
|
if far_end is not None:
|
||||||
serializer_b = get_serializer_for_model(far_end, prefix='Nested')
|
serializer_b = get_serializer_for_model(far_end[0], prefix='Nested')
|
||||||
z = serializer_b(far_end, context={'request': request}).data
|
z = serializer_b(far_end, many=True, context={'request': request}).data
|
||||||
else:
|
else:
|
||||||
z = None
|
z = None
|
||||||
|
|
||||||
@ -745,13 +745,13 @@ class ConnectedDeviceViewSet(ViewSet):
|
|||||||
device=peer_device,
|
device=peer_device,
|
||||||
name=peer_interface_name
|
name=peer_interface_name
|
||||||
)
|
)
|
||||||
endpoint = peer_interface.connected_endpoint
|
endpoints = peer_interface.connected_endpoints
|
||||||
|
|
||||||
# If an Interface, return the parent device
|
# If an Interface, return the parent device
|
||||||
if type(endpoint) is Interface:
|
if endpoints and type(endpoints[0]) is Interface:
|
||||||
device = get_object_or_404(
|
device = get_object_or_404(
|
||||||
Device.objects.restrict(request.user, 'view'),
|
Device.objects.restrict(request.user, 'view'),
|
||||||
pk=endpoint.device_id
|
pk=endpoints[0].device_id
|
||||||
)
|
)
|
||||||
return Response(serializers.DeviceSerializer(device, context={'request': request}).data)
|
return Response(serializers.DeviceSerializer(device, context={'request': request}).data)
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ __all__ = (
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class CableTerminationColumn(tables.TemplateColumn):
|
class CableTerminationsColumn(tables.TemplateColumn):
|
||||||
|
|
||||||
def __init__(self, cable_end, *args, **kwargs):
|
def __init__(self, cable_end, *args, **kwargs):
|
||||||
template_code = """
|
template_code = """
|
||||||
@ -24,7 +24,7 @@ class CableTerminationColumn(tables.TemplateColumn):
|
|||||||
super().__init__(template_code=template_code, *args, **kwargs)
|
super().__init__(template_code=template_code, *args, **kwargs)
|
||||||
|
|
||||||
def value(self, value):
|
def value(self, value):
|
||||||
return ', '.join(value.all())
|
return ', '.join([str(t.termination) for t in value.all()])
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -56,15 +56,17 @@ class CableTable(NetBoxTable):
|
|||||||
# linkify=True,
|
# linkify=True,
|
||||||
# verbose_name='Rack B'
|
# verbose_name='Rack B'
|
||||||
# )
|
# )
|
||||||
a_terminations = CableTerminationColumn(
|
a_terminations = CableTerminationsColumn(
|
||||||
cable_end='A',
|
cable_end='A',
|
||||||
accessor=Accessor('terminations'),
|
accessor=Accessor('terminations'),
|
||||||
orderable=False
|
orderable=False,
|
||||||
|
verbose_name='A Side'
|
||||||
)
|
)
|
||||||
b_terminations = CableTerminationColumn(
|
b_terminations = CableTerminationsColumn(
|
||||||
cable_end='B',
|
cable_end='B',
|
||||||
accessor=Accessor('terminations'),
|
accessor=Accessor('terminations'),
|
||||||
orderable=False
|
orderable=False,
|
||||||
|
verbose_name='B Side'
|
||||||
)
|
)
|
||||||
status = columns.ChoiceFieldColumn()
|
status = columns.ChoiceFieldColumn()
|
||||||
tenant = TenantColumn()
|
tenant = TenantColumn()
|
||||||
|
@ -55,9 +55,9 @@ class Mixins:
|
|||||||
self.assertHttpStatus(response, status.HTTP_200_OK)
|
self.assertHttpStatus(response, status.HTTP_200_OK)
|
||||||
self.assertEqual(len(response.data), 1)
|
self.assertEqual(len(response.data), 1)
|
||||||
segment1 = response.data[0]
|
segment1 = response.data[0]
|
||||||
self.assertEqual(segment1[0]['name'], obj.name)
|
self.assertEqual(segment1[0][0]['name'], obj.name)
|
||||||
self.assertEqual(segment1[1]['label'], cable.label)
|
self.assertEqual(segment1[1]['label'], cable.label)
|
||||||
self.assertEqual(segment1[2]['name'], peer_obj.name)
|
self.assertEqual(segment1[2][0]['name'], peer_obj.name)
|
||||||
|
|
||||||
|
|
||||||
class RegionTest(APIViewTestCases.APIViewTestCase):
|
class RegionTest(APIViewTestCases.APIViewTestCase):
|
||||||
|
@ -3668,7 +3668,10 @@ class CableTestCase(TestCase, ChangeLoggedFilterSetTests):
|
|||||||
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
|
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
|
||||||
|
|
||||||
def test_termination_ids(self):
|
def test_termination_ids(self):
|
||||||
interface_ids = Cable.objects.values_list('termination_a_id', flat=True)[:3]
|
interface_ids = CableTermination.objects.filter(
|
||||||
|
cable__in=Cable.objects.all()[:3],
|
||||||
|
cable_end='A'
|
||||||
|
).values_list('termination_id', flat=True)
|
||||||
params = {
|
params = {
|
||||||
'termination_a_type': 'dcim.interface',
|
'termination_a_type': 'dcim.interface',
|
||||||
'termination_a_id': list(interface_ids),
|
'termination_a_id': list(interface_ids),
|
||||||
|
@ -501,12 +501,10 @@ class CableTestCase(TestCase):
|
|||||||
"""
|
"""
|
||||||
When a new Cable is created, it must be cached on either termination point.
|
When a new Cable is created, it must be cached on either termination point.
|
||||||
"""
|
"""
|
||||||
interface1 = Interface.objects.get(pk=self.interface1.pk)
|
self.interface1.refresh_from_db()
|
||||||
interface2 = Interface.objects.get(pk=self.interface2.pk)
|
self.interface2.refresh_from_db()
|
||||||
self.assertEqual(self.cable.termination_a, interface1)
|
self.assertEqual(self.interface1._link_peer, self.interface2)
|
||||||
self.assertEqual(interface1._link_peer, interface2)
|
self.assertEqual(self.interface2._link_peer, self.interface1)
|
||||||
self.assertEqual(self.cable.termination_b, interface2)
|
|
||||||
self.assertEqual(interface2._link_peer, interface1)
|
|
||||||
|
|
||||||
def test_cable_deletion(self):
|
def test_cable_deletion(self):
|
||||||
"""
|
"""
|
||||||
|
@ -2883,14 +2883,14 @@ class CableBulkImportView(generic.BulkImportView):
|
|||||||
|
|
||||||
|
|
||||||
class CableBulkEditView(generic.BulkEditView):
|
class CableBulkEditView(generic.BulkEditView):
|
||||||
queryset = Cable.objects.prefetch_related('termination_a', 'termination_b')
|
queryset = Cable.objects.prefetch_related('terminations')
|
||||||
filterset = filtersets.CableFilterSet
|
filterset = filtersets.CableFilterSet
|
||||||
table = tables.CableTable
|
table = tables.CableTable
|
||||||
form = forms.CableBulkEditForm
|
form = forms.CableBulkEditForm
|
||||||
|
|
||||||
|
|
||||||
class CableBulkDeleteView(generic.BulkDeleteView):
|
class CableBulkDeleteView(generic.BulkDeleteView):
|
||||||
queryset = Cable.objects.prefetch_related('termination_a', 'termination_b')
|
queryset = Cable.objects.prefetch_related('terminations')
|
||||||
filterset = filtersets.CableFilterSet
|
filterset = filtersets.CableFilterSet
|
||||||
table = tables.CableTable
|
table = tables.CableTable
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user