Merge "Fix DriverFilter to accept None volume type" into stable/stein

This commit is contained in:
Zuul 2020-08-07 06:26:28 +00:00 committed by Gerrit Code Review
commit ce4c86a1a3
2 changed files with 6 additions and 3 deletions

View File

@ -114,7 +114,7 @@ class DriverFilter(filters.BaseBackendFilter):
qos_specs = filter_properties.get('qos_specs', {}) qos_specs = filter_properties.get('qos_specs', {})
volume_type = filter_properties.get('volume_type', {}) volume_type = filter_properties.get('volume_type', {}) or {}
extra_specs = volume_type.get('extra_specs', {}) extra_specs = volume_type.get('extra_specs', {})
request_spec = filter_properties.get('request_spec', {}) request_spec = filter_properties.get('request_spec', {})

View File

@ -819,8 +819,11 @@ class AffinityFilterTestCase(BackendFiltersTestCase):
self.assertFalse(filt_cls.backend_passes(host, filter_properties)) self.assertFalse(filt_cls.backend_passes(host, filter_properties))
@ddt.ddt
class DriverFilterTestCase(BackendFiltersTestCase): class DriverFilterTestCase(BackendFiltersTestCase):
def test_passing_function(self): @ddt.data({'volume_type': {}}, {'volume_type': None})
@ddt.unpack
def test_passing_function(self, volume_type):
filt_cls = self.class_map['DriverFilter']() filt_cls = self.class_map['DriverFilter']()
host1 = fakes.FakeBackendState( host1 = fakes.FakeBackendState(
'host1', { 'host1', {
@ -829,7 +832,7 @@ class DriverFilterTestCase(BackendFiltersTestCase):
} }
}) })
filter_properties = {'volume_type': {}} filter_properties = {'volume_type': volume_type}
self.assertTrue(filt_cls.backend_passes(host1, filter_properties)) self.assertTrue(filt_cls.backend_passes(host1, filter_properties))