From 62509c20dab6cc24dca6cdc66fd4ead78a272172 Mon Sep 17 00:00:00 2001 From: jeremystretch Date: Sat, 11 Feb 2023 16:30:17 -0500 Subject: [PATCH] Check for change records only if objects being deleted support change logging --- netbox/utilities/testing/views.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/netbox/utilities/testing/views.py b/netbox/utilities/testing/views.py index 0a16c4b3b..4a1b2207d 100644 --- a/netbox/utilities/testing/views.py +++ b/netbox/utilities/testing/views.py @@ -8,6 +8,7 @@ from django.urls import reverse from extras.choices import ObjectChangeActionChoices from extras.models import ObjectChange +from netbox.models.features import ChangeLoggingMixin from users.models import ObjectPermission from utilities.choices import ImportFormatChoices from .base import ModelTestCase @@ -350,12 +351,13 @@ class ViewTestCases: self._get_queryset().get(pk=instance.pk) # Verify ObjectChange creation - objectchanges = ObjectChange.objects.filter( - changed_object_type=ContentType.objects.get_for_model(instance), - changed_object_id=instance.pk - ) - self.assertEqual(len(objectchanges), 1) - self.assertEqual(objectchanges[0].action, ObjectChangeActionChoices.ACTION_DELETE) + if issubclass(instance.__class__, ChangeLoggingMixin): + objectchanges = ObjectChange.objects.filter( + changed_object_type=ContentType.objects.get_for_model(instance), + changed_object_id=instance.pk + ) + self.assertEqual(len(objectchanges), 1) + self.assertEqual(objectchanges[0].action, ObjectChangeActionChoices.ACTION_DELETE) @override_settings(EXEMPT_VIEW_PERMISSIONS=['*']) def test_delete_object_with_constrained_permission(self):