mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-22 20:12:00 -06:00
17414 allow single vlan in vlan group (#17418)
* 17414 allow single vlan in vlan group * 17414 add test
This commit is contained in:
parent
93eea95735
commit
81a1280b65
@ -100,7 +100,7 @@ class VLANGroup(OrganizationalModel):
|
|||||||
if self.vid_ranges and check_ranges_overlap(self.vid_ranges):
|
if self.vid_ranges and check_ranges_overlap(self.vid_ranges):
|
||||||
raise ValidationError({'vid_ranges': _("Ranges cannot overlap.")})
|
raise ValidationError({'vid_ranges': _("Ranges cannot overlap.")})
|
||||||
for vid_range in self.vid_ranges:
|
for vid_range in self.vid_ranges:
|
||||||
if vid_range.lower >= vid_range.upper:
|
if vid_range.lower > vid_range.upper:
|
||||||
raise ValidationError({
|
raise ValidationError({
|
||||||
'vid_ranges': _(
|
'vid_ranges': _(
|
||||||
"Maximum child VID must be greater than or equal to minimum child VID ({value})"
|
"Maximum child VID must be greater than or equal to minimum child VID ({value})"
|
||||||
|
@ -543,3 +543,17 @@ class TestVLANGroup(TestCase):
|
|||||||
|
|
||||||
vlan = VLAN(vid=109, name='VLAN 109', group=vlangroup)
|
vlan = VLAN(vid=109, name='VLAN 109', group=vlangroup)
|
||||||
vlan.full_clean()
|
vlan.full_clean()
|
||||||
|
|
||||||
|
def test_overlapping_vlan(self):
|
||||||
|
vlangroup = VLANGroup(
|
||||||
|
name='VLAN Group 1',
|
||||||
|
slug='vlan-group-1',
|
||||||
|
vid_ranges=string_to_ranges('2-4,3-5'),
|
||||||
|
)
|
||||||
|
with self.assertRaises(ValidationError):
|
||||||
|
vlangroup.full_clean()
|
||||||
|
|
||||||
|
# make sure single vlan range works
|
||||||
|
vlangroup.vid_ranges = string_to_ranges('2-2')
|
||||||
|
vlangroup.full_clean()
|
||||||
|
vlangroup.save()
|
||||||
|
Loading…
Reference in New Issue
Block a user