summaryrefslogtreecommitdiff
path: root/cinder/tests/unit/volume/drivers/test_rbd.py
diff options
context:
space:
mode:
Diffstat (limited to 'cinder/tests/unit/volume/drivers/test_rbd.py')
-rw-r--r--cinder/tests/unit/volume/drivers/test_rbd.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/cinder/tests/unit/volume/drivers/test_rbd.py b/cinder/tests/unit/volume/drivers/test_rbd.py
index 57dae3af1..f1ffeb89e 100644
--- a/cinder/tests/unit/volume/drivers/test_rbd.py
+++ b/cinder/tests/unit/volume/drivers/test_rbd.py
@@ -3361,6 +3361,17 @@ class RBDTestCase(test.TestCase):
{'provider_location':
"{\"saved_features\":%s}" % image_features}, ret)
+ @common_mocks
+ def test_enable_multiattach_no_features(self):
+ image = self.mock_proxy.return_value.__enter__.return_value
+ image.features.return_value = 0
+
+ ret = self.driver._enable_multiattach(self.volume_a)
+
+ image.update_features.assert_not_called()
+
+ self.assertEqual({'provider_location': '{"saved_features":0}'}, ret)
+
@ddt.data(MULTIATTACH_FULL_FEATURES, MULTIATTACH_REDUCED_FEATURES)
@common_mocks
def test_disable_multiattach(self, features):
@@ -3374,6 +3385,18 @@ class RBDTestCase(test.TestCase):
self.assertEqual({'provider_location': None}, ret)
+ @common_mocks
+ def test_disable_multiattach_no_features(self):
+ image = self.mock_proxy.return_value.__enter__.return_value
+ self.volume_a.provider_location = '{"saved_features": 0}'
+ image.features.return_value = 0
+
+ ret = self.driver._disable_multiattach(self.volume_a)
+
+ image.update_features.assert_not_called()
+
+ self.assertEqual({'provider_location': None}, ret)
+
class ManagedRBDTestCase(test_driver.BaseDriverTestCase):
driver_name = "cinder.volume.drivers.rbd.RBDDriver"