Fix filterset tests

This commit is contained in:
Jeremy Stretch
2025-11-21 10:06:43 -05:00
parent b9d57c74ca
commit 5b8d80a371
4 changed files with 70 additions and 74 deletions

View File

@@ -884,10 +884,11 @@ class FrontPortTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeCo
choices=PortTypeChoices, choices=PortTypeChoices,
null_value=None null_value=None
) )
# TODO rear_port_template_id = django_filters.ModelMultipleChoiceFilter(
# rear_port_id = django_filters.ModelMultipleChoiceFilter( field_name='rear_ports',
# queryset=RearPortTemplate.objects.all() queryset=FrontPortTemplate.objects.all(),
# ) label=_('Rear port template (ID)'),
)
class Meta: class Meta:
model = FrontPortTemplate model = FrontPortTemplate
@@ -899,10 +900,11 @@ class RearPortTemplateFilterSet(ChangeLoggedModelFilterSet, ModularDeviceTypeCom
choices=PortTypeChoices, choices=PortTypeChoices,
null_value=None null_value=None
) )
# TODO front_port_template_id = django_filters.ModelMultipleChoiceFilter(
# front_port_id = django_filters.ModelMultipleChoiceFilter( field_name='front_ports',
# queryset=FrontPortTemplate.objects.all() queryset=FrontPortTemplate.objects.all(),
# ) label=_('Front port template (ID)'),
)
class Meta: class Meta:
model = RearPortTemplate model = RearPortTemplate
@@ -2106,10 +2108,11 @@ class FrontPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet)
choices=PortTypeChoices, choices=PortTypeChoices,
null_value=None null_value=None
) )
# TODO rear_port_id = django_filters.ModelMultipleChoiceFilter(
# rear_port_id = django_filters.ModelMultipleChoiceFilter( field_name='rear_ports',
# queryset=RearPort.objects.all() queryset=RearPort.objects.all(),
# ) label=_('Rear port (ID)'),
)
class Meta: class Meta:
model = FrontPort model = FrontPort
@@ -2124,10 +2127,11 @@ class RearPortFilterSet(ModularDeviceComponentFilterSet, CabledObjectFilterSet):
choices=PortTypeChoices, choices=PortTypeChoices,
null_value=None null_value=None
) )
# TODO front_port_id = django_filters.ModelMultipleChoiceFilter(
# front_port_id = django_filters.ModelMultipleChoiceFilter( field_name='front_ports',
# queryset=FrontPort.objects.all() queryset=FrontPort.objects.all(),
# ) label=_('Front port (ID)'),
)
class Meta: class Meta:
model = RearPort model = RearPort

View File

@@ -68,6 +68,7 @@ class Migration(migrations.Migration):
( (
'front_port_position', 'front_port_position',
models.PositiveSmallIntegerField( models.PositiveSmallIntegerField(
default=1,
validators=[ validators=[
django.core.validators.MinValueValidator(1), django.core.validators.MinValueValidator(1),
django.core.validators.MaxValueValidator(1024) django.core.validators.MaxValueValidator(1024)
@@ -77,6 +78,7 @@ class Migration(migrations.Migration):
( (
'rear_port_position', 'rear_port_position',
models.PositiveSmallIntegerField( models.PositiveSmallIntegerField(
default=1,
validators=[ validators=[
django.core.validators.MinValueValidator(1), django.core.validators.MinValueValidator(1),
django.core.validators.MaxValueValidator(1024) django.core.validators.MaxValueValidator(1024)
@@ -127,6 +129,7 @@ class Migration(migrations.Migration):
( (
'front_port_position', 'front_port_position',
models.PositiveSmallIntegerField( models.PositiveSmallIntegerField(
default=1,
validators=[ validators=[
django.core.validators.MinValueValidator(1), django.core.validators.MinValueValidator(1),
django.core.validators.MaxValueValidator(1024) django.core.validators.MaxValueValidator(1024)
@@ -136,6 +139,7 @@ class Migration(migrations.Migration):
( (
'rear_port_position', 'rear_port_position',
models.PositiveSmallIntegerField( models.PositiveSmallIntegerField(
default=1,
validators=[ validators=[
django.core.validators.MinValueValidator(1), django.core.validators.MinValueValidator(1),
django.core.validators.MaxValueValidator(1024), django.core.validators.MaxValueValidator(1024),

View File

@@ -15,12 +15,14 @@ class PortAssignmentBase(models.Model):
Base class for PortAssignment and PortAssignment Template Base class for PortAssignment and PortAssignment Template
""" """
front_port_position = models.PositiveSmallIntegerField( front_port_position = models.PositiveSmallIntegerField(
default=1,
validators=( validators=(
MinValueValidator(PORT_POSITION_MIN), MinValueValidator(PORT_POSITION_MIN),
MaxValueValidator(PORT_POSITION_MAX), MaxValueValidator(PORT_POSITION_MAX),
), ),
) )
rear_port_position = models.PositiveSmallIntegerField( rear_port_position = models.PositiveSmallIntegerField(
default=1,
validators=( validators=(
MinValueValidator(PORT_POSITION_MIN), MinValueValidator(PORT_POSITION_MIN),
MaxValueValidator(PORT_POSITION_MAX), MaxValueValidator(PORT_POSITION_MAX),

View File

@@ -1355,22 +1355,15 @@ class DeviceTypeTestCase(TestCase, ChangeLoggedFilterSetTests):
RearPortTemplate(device_type=device_types[1], name='Rear Port 2', type=PortTypeChoices.TYPE_8P8C), RearPortTemplate(device_type=device_types[1], name='Rear Port 2', type=PortTypeChoices.TYPE_8P8C),
) )
RearPortTemplate.objects.bulk_create(rear_ports) RearPortTemplate.objects.bulk_create(rear_ports)
FrontPortTemplate.objects.bulk_create( front_ports = (
( FrontPortTemplate(device_type=device_types[0], name='Front Port 1', type=PortTypeChoices.TYPE_8P8C),
FrontPortTemplate( FrontPortTemplate(device_type=device_types[1], name='Front Port 2', type=PortTypeChoices.TYPE_8P8C),
device_type=device_types[0],
name='Front Port 1',
type=PortTypeChoices.TYPE_8P8C,
rear_port=rear_ports[0],
),
FrontPortTemplate(
device_type=device_types[1],
name='Front Port 2',
type=PortTypeChoices.TYPE_8P8C,
rear_port=rear_ports[1],
),
)
) )
FrontPortTemplate.objects.bulk_create(front_ports)
PortAssignmentTemplate.objects.bulk_create([
PortAssignmentTemplate(front_port=front_ports[0], rear_port=rear_ports[0]),
PortAssignmentTemplate(front_port=front_ports[1], rear_port=rear_ports[1]),
])
ModuleBayTemplate.objects.bulk_create(( ModuleBayTemplate.objects.bulk_create((
ModuleBayTemplate(device_type=device_types[0], name='Module Bay 1'), ModuleBayTemplate(device_type=device_types[0], name='Module Bay 1'),
ModuleBayTemplate(device_type=device_types[1], name='Module Bay 2'), ModuleBayTemplate(device_type=device_types[1], name='Module Bay 2'),
@@ -1626,22 +1619,15 @@ class ModuleTypeTestCase(TestCase, ChangeLoggedFilterSetTests):
RearPortTemplate(module_type=module_types[1], name='Rear Port 2', type=PortTypeChoices.TYPE_8P8C), RearPortTemplate(module_type=module_types[1], name='Rear Port 2', type=PortTypeChoices.TYPE_8P8C),
) )
RearPortTemplate.objects.bulk_create(rear_ports) RearPortTemplate.objects.bulk_create(rear_ports)
FrontPortTemplate.objects.bulk_create( front_ports = (
( FrontPortTemplate(module_type=module_types[0], name='Front Port 1', type=PortTypeChoices.TYPE_8P8C),
FrontPortTemplate( FrontPortTemplate(module_type=module_types[1], name='Front Port 2', type=PortTypeChoices.TYPE_8P8C),
module_type=module_types[0],
name='Front Port 1',
type=PortTypeChoices.TYPE_8P8C,
rear_port=rear_ports[0],
),
FrontPortTemplate(
module_type=module_types[1],
name='Front Port 2',
type=PortTypeChoices.TYPE_8P8C,
rear_port=rear_ports[1],
),
)
) )
FrontPortTemplate.objects.bulk_create(front_ports)
PortAssignmentTemplate.objects.bulk_create([
PortAssignmentTemplate(front_port=front_ports[0], rear_port=rear_ports[0]),
PortAssignmentTemplate(front_port=front_ports[1], rear_port=rear_ports[1]),
])
def test_q(self): def test_q(self):
params = {'q': 'foobar1'} params = {'q': 'foobar1'}
@@ -2057,11 +2043,10 @@ class FrontPortTemplateTestCase(TestCase, DeviceComponentTemplateFilterSetTests,
) )
RearPortTemplate.objects.bulk_create(rear_ports) RearPortTemplate.objects.bulk_create(rear_ports)
FrontPortTemplate.objects.bulk_create(( front_ports = (
FrontPortTemplate( FrontPortTemplate(
device_type=device_types[0], device_type=device_types[0],
name='Front Port 1', name='Front Port 1',
rear_port=rear_ports[0],
type=PortTypeChoices.TYPE_8P8C, type=PortTypeChoices.TYPE_8P8C,
color=ColorChoices.COLOR_RED, color=ColorChoices.COLOR_RED,
description='foobar1' description='foobar1'
@@ -2069,7 +2054,6 @@ class FrontPortTemplateTestCase(TestCase, DeviceComponentTemplateFilterSetTests,
FrontPortTemplate( FrontPortTemplate(
device_type=device_types[1], device_type=device_types[1],
name='Front Port 2', name='Front Port 2',
rear_port=rear_ports[1],
type=PortTypeChoices.TYPE_110_PUNCH, type=PortTypeChoices.TYPE_110_PUNCH,
color=ColorChoices.COLOR_GREEN, color=ColorChoices.COLOR_GREEN,
description='foobar2' description='foobar2'
@@ -2077,12 +2061,17 @@ class FrontPortTemplateTestCase(TestCase, DeviceComponentTemplateFilterSetTests,
FrontPortTemplate( FrontPortTemplate(
device_type=device_types[2], device_type=device_types[2],
name='Front Port 3', name='Front Port 3',
rear_port=rear_ports[2],
type=PortTypeChoices.TYPE_BNC, type=PortTypeChoices.TYPE_BNC,
color=ColorChoices.COLOR_BLUE, color=ColorChoices.COLOR_BLUE,
description='foobar3' description='foobar3'
), ),
)) )
FrontPortTemplate.objects.bulk_create(front_ports)
PortAssignmentTemplate.objects.bulk_create([
PortAssignmentTemplate(front_port=front_ports[0], rear_port=rear_ports[0]),
PortAssignmentTemplate(front_port=front_ports[1], rear_port=rear_ports[1]),
PortAssignmentTemplate(front_port=front_ports[2], rear_port=rear_ports[2]),
])
def test_name(self): def test_name(self):
params = {'name': ['Front Port 1', 'Front Port 2']} params = {'name': ['Front Port 1', 'Front Port 2']}
@@ -2752,10 +2741,15 @@ class DeviceTestCase(TestCase, ChangeLoggedFilterSetTests):
RearPort(device=devices[1], name='Rear Port 2', type=PortTypeChoices.TYPE_8P8C), RearPort(device=devices[1], name='Rear Port 2', type=PortTypeChoices.TYPE_8P8C),
) )
RearPort.objects.bulk_create(rear_ports) RearPort.objects.bulk_create(rear_ports)
FrontPort.objects.bulk_create(( front_ports = (
FrontPort(device=devices[0], name='Front Port 1', type=PortTypeChoices.TYPE_8P8C, rear_port=rear_ports[0]), FrontPort(device=devices[0], name='Front Port 1', type=PortTypeChoices.TYPE_8P8C),
FrontPort(device=devices[1], name='Front Port 2', type=PortTypeChoices.TYPE_8P8C, rear_port=rear_ports[1]), FrontPort(device=devices[1], name='Front Port 2', type=PortTypeChoices.TYPE_8P8C),
)) )
FrontPort.objects.bulk_create(front_ports)
PortAssignment.objects.bulk_create([
PortAssignment(front_port=front_ports[0], rear_port=rear_ports[0]),
PortAssignment(front_port=front_ports[1], rear_port=rear_ports[1]),
])
ModuleBay.objects.create(device=devices[0], name='Module Bay 1') ModuleBay.objects.create(device=devices[0], name='Module Bay 1')
ModuleBay.objects.create(device=devices[1], name='Module Bay 2') ModuleBay.objects.create(device=devices[1], name='Module Bay 2')
DeviceBay.objects.bulk_create(( DeviceBay.objects.bulk_create((
@@ -5090,8 +5084,6 @@ class FrontPortTestCase(TestCase, DeviceComponentFilterSetTests, ChangeLoggedFil
label='A', label='A',
type=PortTypeChoices.TYPE_8P8C, type=PortTypeChoices.TYPE_8P8C,
color=ColorChoices.COLOR_RED, color=ColorChoices.COLOR_RED,
rear_port=rear_ports[0],
rear_port_position=1,
description='First', description='First',
_site=devices[0].site, _site=devices[0].site,
_location=devices[0].location, _location=devices[0].location,
@@ -5104,8 +5096,6 @@ class FrontPortTestCase(TestCase, DeviceComponentFilterSetTests, ChangeLoggedFil
label='B', label='B',
type=PortTypeChoices.TYPE_110_PUNCH, type=PortTypeChoices.TYPE_110_PUNCH,
color=ColorChoices.COLOR_GREEN, color=ColorChoices.COLOR_GREEN,
rear_port=rear_ports[1],
rear_port_position=2,
description='Second', description='Second',
_site=devices[1].site, _site=devices[1].site,
_location=devices[1].location, _location=devices[1].location,
@@ -5118,8 +5108,6 @@ class FrontPortTestCase(TestCase, DeviceComponentFilterSetTests, ChangeLoggedFil
label='C', label='C',
type=PortTypeChoices.TYPE_BNC, type=PortTypeChoices.TYPE_BNC,
color=ColorChoices.COLOR_BLUE, color=ColorChoices.COLOR_BLUE,
rear_port=rear_ports[2],
rear_port_position=3,
description='Third', description='Third',
_site=devices[2].site, _site=devices[2].site,
_location=devices[2].location, _location=devices[2].location,
@@ -5130,8 +5118,6 @@ class FrontPortTestCase(TestCase, DeviceComponentFilterSetTests, ChangeLoggedFil
name='Front Port 4', name='Front Port 4',
label='D', label='D',
type=PortTypeChoices.TYPE_FC, type=PortTypeChoices.TYPE_FC,
rear_port=rear_ports[3],
rear_port_position=1,
_site=devices[3].site, _site=devices[3].site,
_location=devices[3].location, _location=devices[3].location,
_rack=devices[3].rack, _rack=devices[3].rack,
@@ -5141,8 +5127,6 @@ class FrontPortTestCase(TestCase, DeviceComponentFilterSetTests, ChangeLoggedFil
name='Front Port 5', name='Front Port 5',
label='E', label='E',
type=PortTypeChoices.TYPE_FC, type=PortTypeChoices.TYPE_FC,
rear_port=rear_ports[4],
rear_port_position=1,
_site=devices[3].site, _site=devices[3].site,
_location=devices[3].location, _location=devices[3].location,
_rack=devices[3].rack, _rack=devices[3].rack,
@@ -5152,14 +5136,20 @@ class FrontPortTestCase(TestCase, DeviceComponentFilterSetTests, ChangeLoggedFil
name='Front Port 6', name='Front Port 6',
label='F', label='F',
type=PortTypeChoices.TYPE_FC, type=PortTypeChoices.TYPE_FC,
rear_port=rear_ports[5],
rear_port_position=1,
_site=devices[3].site, _site=devices[3].site,
_location=devices[3].location, _location=devices[3].location,
_rack=devices[3].rack, _rack=devices[3].rack,
), ),
) )
FrontPort.objects.bulk_create(front_ports) FrontPort.objects.bulk_create(front_ports)
PortAssignment.objects.bulk_create([
PortAssignment(front_port=front_ports[0], rear_port=rear_ports[0]),
PortAssignment(front_port=front_ports[1], rear_port=rear_ports[1], rear_port_position=2),
PortAssignment(front_port=front_ports[2], rear_port=rear_ports[2], rear_port_position=3),
PortAssignment(front_port=front_ports[3], rear_port=rear_ports[3]),
PortAssignment(front_port=front_ports[4], rear_port=rear_ports[4]),
PortAssignment(front_port=front_ports[5], rear_port=rear_ports[5]),
])
# Cables # Cables
Cable(a_terminations=[front_ports[0]], b_terminations=[front_ports[3]]).save() Cable(a_terminations=[front_ports[0]], b_terminations=[front_ports[3]]).save()
@@ -6420,13 +6410,9 @@ class CableTestCase(TestCase, ChangeLoggedFilterSetTests):
console_server_port = ConsoleServerPort.objects.create(device=devices[0], name='Console Server Port 1') console_server_port = ConsoleServerPort.objects.create(device=devices[0], name='Console Server Port 1')
power_port = PowerPort.objects.create(device=devices[0], name='Power Port 1') power_port = PowerPort.objects.create(device=devices[0], name='Power Port 1')
power_outlet = PowerOutlet.objects.create(device=devices[0], name='Power Outlet 1') power_outlet = PowerOutlet.objects.create(device=devices[0], name='Power Outlet 1')
rear_port = RearPort.objects.create(device=devices[0], name='Rear Port 1', positions=1) rear_port = RearPort.objects.create(device=devices[0], name='Rear Port 1')
front_port = FrontPort.objects.create( front_port = FrontPort.objects.create(device=devices[0], name='Front Port 1')
device=devices[0], PortAssignment.objects.create(front_port=front_port, rear_port=rear_port)
name='Front Port 1',
rear_port=rear_port,
rear_port_position=1
)
power_panel = PowerPanel.objects.create(name='Power Panel 1', site=sites[0]) power_panel = PowerPanel.objects.create(name='Power Panel 1', site=sites[0])
power_feed = PowerFeed.objects.create(name='Power Feed 1', power_panel=power_panel) power_feed = PowerFeed.objects.create(name='Power Feed 1', power_panel=power_panel)