Skip to content

Commit 1fb2d1c

Browse files
committed
feat(ipam): Add VLAN group filtering to tests
Introduces tests for VLAN group filtering in FilterSets. This ensures correct validation and behavior when filtering by VLAN group.
1 parent 2ec0676 commit 1fb2d1c

File tree

1 file changed

+16
-2
lines changed

1 file changed

+16
-2
lines changed

netbox/ipam/tests/test_filtersets.py

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -645,9 +645,16 @@ def setUpTestData(cls):
645645
vrfs[1].export_targets.add(route_targets[1])
646646
vrfs[2].export_targets.add(route_targets[2])
647647

648+
vlan_groups = (
649+
VLANGroup(name='VLAN Group 1', slug='vlan-group-1'),
650+
VLANGroup(name='VLAN Group 2', slug='vlan-group-2'),
651+
)
652+
for vlan_group in vlan_groups:
653+
vlan_group.save()
654+
648655
vlans = (
649-
VLAN(vid=1, name='VLAN 1'),
650-
VLAN(vid=2, name='VLAN 2'),
656+
VLAN(vid=1, name='VLAN 1', group=vlan_groups[0]),
657+
VLAN(vid=2, name='VLAN 2', group=vlan_groups[1]),
651658
VLAN(vid=3, name='VLAN 3'),
652659
)
653660
VLAN.objects.bulk_create(vlans)
@@ -850,6 +857,13 @@ def test_site(self):
850857
params = {'site': [sites[0].slug, sites[1].slug]}
851858
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 4)
852859

860+
def test_vlan_group(self):
861+
vlan_groups = VLANGroup.objects.all()[:2]
862+
params = {'vlan_group_id': [vlan_groups[0].pk, vlan_groups[1].pk]}
863+
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 4)
864+
params = {'vlan_group': [vlan_groups[0].slug, vlan_groups[1].slug]}
865+
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 4)
866+
853867
def test_vlan(self):
854868
vlans = VLAN.objects.all()[:2]
855869
params = {'vlan_id': [vlans[0].pk, vlans[1].pk]}

0 commit comments

Comments
 (0)