Cleanup filterset, add test

This commit is contained in:
Daniel Sheppard 2023-08-11 12:44:04 -05:00
parent a91c096101
commit e439a57e28
2 changed files with 7 additions and 22 deletions

View File

@ -1473,28 +1473,6 @@ class InterfaceFilterSet(
queryset=Device.objects.all(), queryset=Device.objects.all(),
label=_('Virtual Chassis Interfaces for Device (ID)') label=_('Virtual Chassis Interfaces for Device (ID)')
) )
virtual_chassis = django_filters.ModelMultipleChoiceFilter(
field_name='device__virtual_chassis',
queryset=VirtualChassis.objects.all(),
to_field_name='name',
label=_('Virtual Chassis Interfaces')
)
virtual_chassis_id = django_filters.ModelMultipleChoiceFilter(
field_name='device__virtual_chassis',
queryset=VirtualChassis.objects.all(),
label=_('Virtual Chassis Interfaces (ID)')
)
device = django_filters.ModelMultipleChoiceFilter(
field_name='device',
queryset=Device.objects.all(),
to_field_name='name',
label=_('Device'),
)
device_id = django_filters.ModelMultipleChoiceFilter(
field_name='device',
queryset=Device.objects.all(),
label=_('Device (ID)'),
)
kind = django_filters.CharFilter( kind = django_filters.CharFilter(
method='filter_kind', method='filter_kind',
label=_('Kind of interface'), label=_('Kind of interface'),

View File

@ -3116,6 +3116,13 @@ class InterfaceTestCase(TestCase, DeviceComponentFilterSetTests, ChangeLoggedFil
params = {'device': [devices[0].name, devices[1].name]} params = {'device': [devices[0].name, devices[1].name]}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2) self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
def test_virtual_chassis_for_device(self):
devices = Device.objects.filter(name__in=['Device 1', 'Device 3'])
params = {'device_id': [devices[0].pk, devices[1].pk]}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
params = {'device': [devices[0].name, devices[1].name]}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
def test_module(self): def test_module(self):
modules = Module.objects.all()[:2] modules = Module.objects.all()[:2]
params = {'module_id': [modules[0].pk, modules[1].pk]} params = {'module_id': [modules[0].pk, modules[1].pk]}