diff --git a/netbox/dcim/tests/test_api.py b/netbox/dcim/tests/test_api.py index 594a4d4f5..24130c649 100644 --- a/netbox/dcim/tests/test_api.py +++ b/netbox/dcim/tests/test_api.py @@ -86,6 +86,35 @@ class RegionTest(APIViewTestCases.APIViewTestCase): Region.objects.create(name='Region 3', slug='region-3') +class SiteGroupTest(APIViewTestCases.APIViewTestCase): + model = SiteGroup + brief_fields = ['_depth', 'display', 'id', 'name', 'site_count', 'slug', 'url'] + create_data = [ + { + 'name': 'Site Group 4', + 'slug': 'site-group-4', + }, + { + 'name': 'Site Group 5', + 'slug': 'site-group-5', + }, + { + 'name': 'Site Group 6', + 'slug': 'site-group-6', + }, + ] + bulk_update_data = { + 'description': 'New description', + } + + @classmethod + def setUpTestData(cls): + + SiteGroup.objects.create(name='Site Group 1', slug='site-group-1') + SiteGroup.objects.create(name='Site Group 2', slug='site-group-2') + SiteGroup.objects.create(name='Site Group 3', slug='site-group-3') + + class SiteTest(APIViewTestCases.APIViewTestCase): model = Site brief_fields = ['display', 'id', 'name', 'slug', 'url'] diff --git a/netbox/extras/tests/test_models.py b/netbox/extras/tests/test_models.py index 645fb8618..10d4168b4 100644 --- a/netbox/extras/tests/test_models.py +++ b/netbox/extras/tests/test_models.py @@ -1,6 +1,6 @@ from django.test import TestCase -from dcim.models import Device, DeviceRole, DeviceType, Manufacturer, Platform, Site, Region +from dcim.models import Device, DeviceRole, DeviceType, Manufacturer, Platform, Region, Site, SiteGroup from extras.models import ConfigContext, Tag from tenancy.models import Tenant, TenantGroup from virtualization.models import Cluster, ClusterGroup, ClusterType, VirtualMachine @@ -28,7 +28,8 @@ class ConfigContextTest(TestCase): self.devicetype = DeviceType.objects.create(manufacturer=manufacturer, model='Device Type 1', slug='device-type-1') self.devicerole = DeviceRole.objects.create(name='Device Role 1', slug='device-role-1') self.region = Region.objects.create(name="Region") - self.site = Site.objects.create(name='Site-1', slug='site-1', region=self.region) + self.sitegroup = SiteGroup.objects.create(name="Site Group") + self.site = Site.objects.create(name='Site-1', slug='site-1', region=self.region, group=self.sitegroup) self.platform = Platform.objects.create(name="Platform") self.tenantgroup = TenantGroup.objects.create(name="Tenant Group") self.tenant = Tenant.objects.create(name="Tenant", group=self.tenantgroup) @@ -160,6 +161,14 @@ class ConfigContextTest(TestCase): } ) region_context.regions.add(self.region) + sitegroup_context = ConfigContext.objects.create( + name="sitegroup", + weight=100, + data={ + "sitegroup": 1 + } + ) + sitegroup_context.site_groups.add(self.sitegroup) platform_context = ConfigContext.objects.create( name="platform", weight=100, @@ -224,6 +233,14 @@ class ConfigContextTest(TestCase): } ) region_context.regions.add(self.region) + sitegroup_context = ConfigContext.objects.create( + name="sitegroup", + weight=100, + data={ + "sitegroup": 1 + } + ) + sitegroup_context.site_groups.add(self.sitegroup) platform_context = ConfigContext.objects.create( name="platform", weight=100,