From: Jason Dillaman Date: Thu, 12 Mar 2015 04:13:40 +0000 (-0400) Subject: tests: add update_features test for pybind X-Git-Tag: v9.0.0~37^2~4 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=28557c3e178c58d97f78a9b60a80d412b3c2baf6;p=ceph.git tests: add update_features test for pybind Signed-off-by: Jason Dillaman --- diff --git a/src/test/pybind/test_rbd.py b/src/test/pybind/test_rbd.py index 4be09085b5c2..a98b5dcea9f5 100644 --- a/src/test/pybind/test_rbd.py +++ b/src/test/pybind/test_rbd.py @@ -73,6 +73,16 @@ def remove_image(): if image_name is not None: RBD().remove(ioctx, image_name) +def require_new_format(): + def wrapper(fn): + def _require_new_format(*args, **kwargs): + global features + if features is None: + raise SkipTest + return fn(*args, **kwargs) + return functools.wraps(fn)(_require_new_format) + return wrapper + def require_features(required_features): def wrapper(fn): def _require_features(*args, **kwargs): @@ -283,6 +293,13 @@ class TestImage(object): self.image.close() remove_image() + @require_new_format() + @blacklist_features([RBD_FEATURE_EXCLUSIVE_LOCK]) + def test_update_features(self): + features = self.image.features() + self.image.update_features(RBD_FEATURE_EXCLUSIVE_LOCK, True) + eq(features | RBD_FEATURE_EXCLUSIVE_LOCK, self.image.features()) + def test_invalidate_cache(self): self.image.write('abc', 0) eq('abc', self.image.read(0, 3))