From 113de69af71608b0f3c3dafe80446d1a054a1004 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Mon, 24 Jul 2023 10:38:35 -0400 Subject: [PATCH] Simplify tests --- netbox/utilities/tests/test_counters.py | 57 +++++++++++-------------- 1 file changed, 24 insertions(+), 33 deletions(-) diff --git a/netbox/utilities/tests/test_counters.py b/netbox/utilities/tests/test_counters.py index f554fc07f..5c2547b8b 100644 --- a/netbox/utilities/tests/test_counters.py +++ b/netbox/utilities/tests/test_counters.py @@ -1,5 +1,7 @@ from django.test import TestCase + from dcim.models import * +from utilities.testing.utils import create_test_device class CountersTest(TestCase): @@ -9,53 +11,42 @@ class CountersTest(TestCase): @classmethod def setUpTestData(cls): - site = Site.objects.create(name='Test Site 1', slug='test-site-1') - manufacturer = Manufacturer.objects.create(name='Test Manufacturer 1', slug='test-manufacturer-1') - devicetype = DeviceType.objects.create( - manufacturer=manufacturer, model='Test Device Type 1', slug='test-device-type-1' - ) - devicerole = DeviceRole.objects.create( - name='Test Device Role 1', slug='test-device-role-1', color='ff0000' - ) - device1 = Device.objects.create( - device_type=devicetype, device_role=devicerole, name='TestDevice1', site=site - ) - device2 = Device.objects.create( - device_type=devicetype, device_role=devicerole, name='TestDevice2', site=site - ) + # Create devices + device1 = create_test_device('Device 1') + device2 = create_test_device('Device 2') + + # Create interfaces + Interface.objects.create(device=device1, name='Interface 1') + Interface.objects.create(device=device1, name='Interface 2') + Interface.objects.create(device=device2, name='Interface 3') + Interface.objects.create(device=device2, name='Interface 4') def test_interface_count_addition(self): """ When a tracked object (Interface) is added the tracking counter should be updated. """ - device1 = Device.objects.get(name='TestDevice1') - device2 = Device.objects.get(name='TestDevice2') - self.assertEqual(device1._interface_count, 0) - self.assertEqual(device2._interface_count, 0) + device1, device2 = Device.objects.all() + self.assertEqual(device1._interface_count, 2) + self.assertEqual(device2._interface_count, 2) - interface1 = Interface.objects.create(device=device1, name='eth0') - interface2 = Interface.objects.create(device=device2, name='eth0') - interface3 = Interface.objects.create(device=device2, name='eth1') + Interface.objects.create(device=device1, name='Interface 5') + Interface.objects.create(device=device2, name='Interface 6') device1.refresh_from_db() device2.refresh_from_db() - self.assertEqual(device1._interface_count, 1) - self.assertEqual(device2._interface_count, 2) + self.assertEqual(device1._interface_count, 3) + self.assertEqual(device2._interface_count, 3) def test_interface_count_deletion(self): """ When a tracked object (Interface) is deleted the tracking counter should be updated. """ - device1 = Device.objects.get(name='TestDevice1') - device2 = Device.objects.get(name='TestDevice2') - self.assertEqual(device1._interface_count, 0) - self.assertEqual(device2._interface_count, 0) + device1, device2 = Device.objects.all() + self.assertEqual(device1._interface_count, 2) + self.assertEqual(device2._interface_count, 2) - interface1 = Interface.objects.create(device=device1, name='eth0') - interface2 = Interface.objects.create(device=device2, name='eth0') - interface3 = Interface.objects.create(device=device2, name='eth1') - interface2.delete() - interface3.delete() + Interface.objects.get(name='Interface 1').delete() + Interface.objects.get(name='Interface 3').delete() device1.refresh_from_db() device2.refresh_from_db() self.assertEqual(device1._interface_count, 1) - self.assertEqual(device2._interface_count, 0) + self.assertEqual(device2._interface_count, 1)