From 28557c3e178c58d97f78a9b60a80d412b3c2baf6 Mon Sep 17 00:00:00 2001 From: Jason Dillaman Date: Thu, 12 Mar 2015 00:13:40 -0400 Subject: [PATCH] tests: add update_features test for pybind Signed-off-by: Jason Dillaman --- src/test/pybind/test_rbd.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/test/pybind/test_rbd.py b/src/test/pybind/test_rbd.py index 4be09085b5c..a98b5dcea9f 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)) -- 2.47.3