1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Add permission assignment to custom test methods

This commit is contained in:
Jeremy Stretch
2020-06-08 12:22:29 -04:00
parent 3b44e7c1c4
commit a8145fe4c2
10 changed files with 104 additions and 80 deletions

View File

@@ -106,6 +106,7 @@ class SiteTest(APIViewTestCases.APIViewTestCase):
)
Graph.objects.bulk_create(graphs)
self.add_permissions('dcim.view_site')
url = reverse('dcim-api:site-graphs', kwargs={'pk': Site.objects.first().pk})
response = self.client.get(url, **self.header)
@@ -245,6 +246,7 @@ class RackTest(APIViewTestCases.APIViewTestCase):
def test_get_elevation_rack_units(self):
rack = Rack.objects.first()
self.add_permissions('dcim.view_rack')
url = '{}?q=3'.format(reverse('dcim-api:rack-elevation', kwargs={'pk': rack.pk}))
response = self.client.get(url, **self.header)
@@ -270,6 +272,7 @@ class RackTest(APIViewTestCases.APIViewTestCase):
GET a single rack elevation.
"""
rack = Rack.objects.first()
self.add_permissions('dcim.view_rack')
url = reverse('dcim-api:rack-elevation', kwargs={'pk': rack.pk})
response = self.client.get(url, **self.header)
@@ -280,6 +283,7 @@ class RackTest(APIViewTestCases.APIViewTestCase):
GET a single rack elevation in SVG format.
"""
rack = Rack.objects.first()
self.add_permissions('dcim.view_rack')
url = '{}?render=svg'.format(reverse('dcim-api:rack-elevation', kwargs={'pk': rack.pk}))
response = self.client.get(url, **self.header)
@@ -784,6 +788,7 @@ class DeviceTest(APIViewTestCases.APIViewTestCase):
)
Graph.objects.bulk_create(graphs)
self.add_permissions('dcim.view_device')
url = reverse('dcim-api:device-graphs', kwargs={'pk': Device.objects.first().pk})
response = self.client.get(url, **self.header)
@@ -794,6 +799,7 @@ class DeviceTest(APIViewTestCases.APIViewTestCase):
"""
Check that config context data is included by default in the devices list.
"""
self.add_permissions('dcim.view_device')
url = reverse('dcim-api:device-list') + '?slug=device-with-context-data'
response = self.client.get(url, **self.header)
@@ -803,6 +809,7 @@ class DeviceTest(APIViewTestCases.APIViewTestCase):
"""
Check that config context data can be excluded by passing ?exclude=config_context.
"""
self.add_permissions('dcim.view_device')
url = reverse('dcim-api:device-list') + '?exclude=config_context'
response = self.client.get(url, **self.header)
@@ -820,6 +827,7 @@ class DeviceTest(APIViewTestCases.APIViewTestCase):
'name': device.name,
}
self.add_permissions('dcim.add_device')
url = reverse('dcim-api:device-list')
response = self.client.post(url, data, format='json', **self.header)
@@ -878,6 +886,7 @@ class ConsolePortTest(APIViewTestCases.APIViewTestCase):
cable = Cable(termination_a=consoleport, termination_b=consoleserverport, label='Cable 1')
cable.save()
self.add_permissions('dcim.view_consoleport')
url = reverse('dcim-api:consoleport-trace', kwargs={'pk': consoleport.pk})
response = self.client.get(url, **self.header)
@@ -941,6 +950,7 @@ class ConsoleServerPortTest(APIViewTestCases.APIViewTestCase):
cable = Cable(termination_a=consoleserverport, termination_b=consoleport, label='Cable 1')
cable.save()
self.add_permissions('dcim.view_consoleserverport')
url = reverse('dcim-api:consoleserverport-trace', kwargs={'pk': consoleserverport.pk})
response = self.client.get(url, **self.header)
@@ -1004,6 +1014,7 @@ class PowerPortTest(APIViewTestCases.APIViewTestCase):
cable = Cable(termination_a=powerport, termination_b=poweroutlet, label='Cable 1')
cable.save()
self.add_permissions('dcim.view_powerport')
url = reverse('dcim-api:powerport-trace', kwargs={'pk': powerport.pk})
response = self.client.get(url, **self.header)
@@ -1067,6 +1078,7 @@ class PowerOutletTest(APIViewTestCases.APIViewTestCase):
cable = Cable(termination_a=poweroutlet, termination_b=powerport, label='Cable 1')
cable.save()
self.add_permissions('dcim.view_poweroutlet')
url = reverse('dcim-api:poweroutlet-trace', kwargs={'pk': poweroutlet.pk})
response = self.client.get(url, **self.header)
@@ -1143,6 +1155,7 @@ class InterfaceTest(APIViewTestCases.APIViewTestCase):
)
Graph.objects.bulk_create(graphs)
self.add_permissions('dcim.view_interface')
url = reverse('dcim-api:interface-graphs', kwargs={'pk': Interface.objects.first().pk})
response = self.client.get(url, **self.header)
@@ -1446,6 +1459,7 @@ class ConnectionTest(APITestCase):
'termination_b_id': consoleserverport1.pk,
}
self.add_permissions('dcim.add_cable')
url = reverse('dcim-api:cable-list')
response = self.client.post(url, data, format='json', **self.header)
@@ -1484,6 +1498,7 @@ class ConnectionTest(APITestCase):
device=self.panel2, name='Test Front Port 2', type=PortTypeChoices.TYPE_8P8C, rear_port=rearport2
)
self.add_permissions('dcim.add_cable')
url = reverse('dcim-api:cable-list')
cables = [
# Console port to panel1 front
@@ -1539,6 +1554,7 @@ class ConnectionTest(APITestCase):
'termination_b_id': poweroutlet1.pk,
}
self.add_permissions('dcim.add_cable')
url = reverse('dcim-api:cable-list')
response = self.client.post(url, data, format='json', **self.header)
@@ -1574,6 +1590,7 @@ class ConnectionTest(APITestCase):
'termination_b_id': interface2.pk,
}
self.add_permissions('dcim.add_cable')
url = reverse('dcim-api:cable-list')
response = self.client.post(url, data, format='json', **self.header)
@@ -1612,6 +1629,7 @@ class ConnectionTest(APITestCase):
device=self.panel2, name='Test Front Port 2', type=PortTypeChoices.TYPE_8P8C, rear_port=rearport2
)
self.add_permissions('dcim.add_cable')
url = reverse('dcim-api:cable-list')
cables = [
# Interface1 to panel1 front
@@ -1676,6 +1694,7 @@ class ConnectionTest(APITestCase):
'termination_b_id': circuittermination1.pk,
}
self.add_permissions('dcim.add_cable')
url = reverse('dcim-api:cable-list')
response = self.client.post(url, data, format='json', **self.header)
@@ -1723,6 +1742,7 @@ class ConnectionTest(APITestCase):
device=self.panel2, name='Test Front Port 2', type=PortTypeChoices.TYPE_8P8C, rear_port=rearport2
)
self.add_permissions('dcim.add_cable')
url = reverse('dcim-api:cable-list')
cables = [
# Interface to panel1 front