Adopted fix from #4743 and updated API tests

This commit is contained in:
Jeremy Stretch 2020-06-10 16:11:28 -04:00
parent 4078d9b669
commit 1f727f565f
2 changed files with 3 additions and 5 deletions

View File

@ -164,7 +164,7 @@ class PrefixViewSet(CustomFieldModelViewSet):
200: serializers.AvailableIPSerializer(many=True),
}
)
@action(detail=True, url_path='available-ips', methods=['get', 'post'])
@action(detail=True, url_path='available-ips', methods=['get', 'post'], queryset=IPAddress.objects.all())
@advisory_lock(ADVISORY_LOCK_KEYS['available-ips'])
def available_ips(self, request, pk=None):
"""

View File

@ -276,8 +276,7 @@ class PrefixTest(APIViewTestCases.APIViewTestCase):
vrf = VRF.objects.create(name='Test VRF 1', rd='1234')
prefix = Prefix.objects.create(prefix=IPNetwork('192.0.2.0/30'), vrf=vrf, is_pool=True)
url = reverse('ipam-api:prefix-available-ips', kwargs={'pk': prefix.pk})
# TODO: ipam.add_prefix should not be required
self.add_permissions('ipam.add_prefix', 'ipam.add_ipaddress')
self.add_permissions('ipam.add_ipaddress')
# Create all four available IPs with individual requests
for i in range(1, 5):
@ -300,8 +299,7 @@ class PrefixTest(APIViewTestCases.APIViewTestCase):
"""
prefix = Prefix.objects.create(prefix=IPNetwork('192.0.2.0/29'), is_pool=True)
url = reverse('ipam-api:prefix-available-ips', kwargs={'pk': prefix.pk})
# TODO: ipam.add_prefix, ipam.view_prefix should not be required
self.add_permissions('ipam.add_prefix', 'ipam.view_prefix', 'ipam.view_ipaddress', 'ipam.add_ipaddress')
self.add_permissions('ipam.view_ipaddress', 'ipam.add_ipaddress')
# Try to create nine IPs (only eight are available)
data = [{'description': 'Test IP {}'.format(i)} for i in range(1, 10)] # 9 IPs