Procházet zdrojové kódy

Changelog & test for #9060

jeremystretch před 3 roky
rodič
revize
bb99cee48a

+ 1 - 0
docs/release-notes/version-3.2.md

@@ -4,6 +4,7 @@
 
 ### Enhancements
 
+* [#9060](https://github.com/netbox-community/netbox/issues/9060) - Add device type filters for device bays, module bays, and inventory items
 * [#9152](https://github.com/netbox-community/netbox/issues/9152) - Annotate related object type under custom field view
 
 ### Bug Fixes

+ 9 - 0
netbox/dcim/tests/test_filtersets.py

@@ -698,6 +698,9 @@ class DeviceTypeTestCase(TestCase, ChangeLoggedFilterSetTests):
             DeviceBayTemplate(device_type=device_types[0], name='Device Bay 1'),
             DeviceBayTemplate(device_type=device_types[1], name='Device Bay 2'),
         ))
+        # Assigned DeviceType must have parent subdevice_role
+        inventory_item = InventoryItemTemplate(device_type=device_types[1], name='Inventory Item 1')
+        inventory_item.save()
 
     def test_model(self):
         params = {'model': ['Model 1', 'Model 2']}
@@ -784,6 +787,12 @@ class DeviceTypeTestCase(TestCase, ChangeLoggedFilterSetTests):
         params = {'module_bays': 'false'}
         self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
 
+    def test_inventory_items(self):
+        params = {'inventory_items': 'true'}
+        self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
+        params = {'inventory_items': 'false'}
+        self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
+
 
 class ModuleTypeTestCase(TestCase, ChangeLoggedFilterSetTests):
     queryset = ModuleType.objects.all()