fix tests

This commit is contained in:
Arthur Hanson 2024-10-22 09:15:59 -07:00
parent 343e0ad366
commit bc3e1afe93
3 changed files with 14 additions and 5 deletions

View File

@ -1,17 +1,19 @@
from django import forms from django import forms
from django.contrib.contenttypes.models import ContentType
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
from circuits.choices import CircuitCommitRateChoices, CircuitPriorityChoices, CircuitStatusChoices from circuits.choices import CircuitCommitRateChoices, CircuitPriorityChoices, CircuitStatusChoices
from circuits.constants import CIRCUIT_TERMINATION_SCOPE_TYPES
from circuits.models import * from circuits.models import *
from dcim.models import Site from dcim.models import Site
from ipam.models import ASN from ipam.models import ASN
from netbox.choices import DistanceUnitChoices from netbox.choices import DistanceUnitChoices
from netbox.forms import NetBoxModelBulkEditForm from netbox.forms import NetBoxModelBulkEditForm
from tenancy.models import Tenant from tenancy.models import Tenant
from utilities.forms import add_blank_choice from utilities.forms import add_blank_choice, get_field_value
from utilities.forms.fields import ColorField, CommentField, DynamicModelChoiceField, DynamicModelMultipleChoiceField from utilities.forms.fields import ColorField, CommentField, ContentTypeChoiceField, DynamicModelChoiceField, DynamicModelMultipleChoiceField
from utilities.forms.rendering import FieldSet, TabbedGroups from utilities.forms.rendering import FieldSet, TabbedGroups
from utilities.forms.widgets import BulkEditNullBooleanSelect, DatePicker, NumberWithOptions from utilities.forms.widgets import BulkEditNullBooleanSelect, DatePicker, HTMXSelect, NumberWithOptions
__all__ = ( __all__ = (
'CircuitBulkEditForm', 'CircuitBulkEditForm',
@ -197,6 +199,12 @@ class CircuitTerminationBulkEditForm(NetBoxModelBulkEditForm):
max_length=200, max_length=200,
required=False required=False
) )
scope_type = ContentTypeChoiceField(
queryset=ContentType.objects.filter(model__in=CIRCUIT_TERMINATION_SCOPE_TYPES),
widget=HTMXSelect(method='post', attrs={'hx-select': '#form_fields'}),
required=False,
label=_('Scope type')
)
scope = DynamicModelChoiceField( scope = DynamicModelChoiceField(
label=_('Scope'), label=_('Scope'),
queryset=Site.objects.none(), # Initial queryset queryset=Site.objects.none(), # Initial queryset

View File

@ -382,7 +382,7 @@ class CircuitTermination(
def get_peer_termination(self): def get_peer_termination(self):
peer_side = 'Z' if self.term_side == 'A' else 'A' peer_side = 'Z' if self.term_side == 'A' else 'A'
try: try:
return CircuitTermination.objects.prefetch_related('site').get( return CircuitTermination.objects.prefetch_related('scope').get(
circuit=self.circuit, circuit=self.circuit,
term_side=peer_side term_side=peer_side
) )

View File

@ -364,7 +364,8 @@ class CircuitTerminationTestCase(ViewTestCases.PrimaryObjectViewTestCase):
CircuitTermination(circuit=circuits[1], term_side='A', scope=sites[0]), CircuitTermination(circuit=circuits[1], term_side='A', scope=sites[0]),
CircuitTermination(circuit=circuits[1], term_side='Z', scope=sites[1]), CircuitTermination(circuit=circuits[1], term_side='Z', scope=sites[1]),
) )
CircuitTermination.objects.bulk_create(circuit_terminations) for ct in circuit_terminations:
ct.save()
cls.form_data = { cls.form_data = {
'circuit': circuits[2].pk, 'circuit': circuits[2].pk,