Merge "Sort nova availability zones by name"
This commit is contained in:
commit
fe811563ba
@ -22,6 +22,7 @@ from __future__ import absolute_import
|
||||
|
||||
import collections
|
||||
import logging
|
||||
from operator import attrgetter
|
||||
|
||||
from django.conf import settings
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
@ -920,7 +921,9 @@ def tenant_absolute_limits(request, reserved=False, tenant_id=None):
|
||||
|
||||
@profiler.trace
|
||||
def availability_zone_list(request, detailed=False):
|
||||
return novaclient(request).availability_zones.list(detailed=detailed)
|
||||
zones = novaclient(request).availability_zones.list(detailed=detailed)
|
||||
zones.sort(key=attrgetter('zoneName'))
|
||||
return zones
|
||||
|
||||
|
||||
@profiler.trace
|
||||
|
@ -751,3 +751,17 @@ class ComputeApiTests(test.APIMockTestCase):
|
||||
for key in expected_keys:
|
||||
self.assertEqual(quota_data[key], ret_val.get(key).limit)
|
||||
novaclient.quotas.get.assert_called_once_with(tenant_id)
|
||||
|
||||
@mock.patch.object(api.nova, 'novaclient')
|
||||
def test_availability_zone_list(self, mock_novaclient):
|
||||
novaclient = mock_novaclient.return_value
|
||||
detailed = False
|
||||
zones = [mock.Mock(zoneName='john'), mock.Mock(zoneName='sam'),
|
||||
mock.Mock(zoneName='bob')]
|
||||
novaclient.availability_zones.list.return_value = zones
|
||||
|
||||
ret_val = api.nova.availability_zone_list(self.request, detailed)
|
||||
self.assertEqual([zone.zoneName for zone in ret_val],
|
||||
['bob', 'john', 'sam'])
|
||||
novaclient.availability_zones.list.assert_called_once_with(
|
||||
detailed=detailed)
|
||||
|
Loading…
x
Reference in New Issue
Block a user