Nir Soffer has uploaded a new change for review.
Change subject: guarded: Implement __repr__ for easier debugging
......................................................................
guarded: Implement __repr__ for easier debugging
Change-Id: I708cf5be83790a85792ae1cddd564db80521e8df
Signed-off-by: Nir Soffer <nsoffer(a)redhat.com>
---
M lib/vdsm/storage/guarded.py
M tests/storage_resourcemanager_test.py
M tests/storage_volume_test.py
3 files changed, 23 insertions(+), 0 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/76/64976/1
diff --git a/lib/vdsm/storage/guarded.py b/lib/vdsm/storage/guarded.py
index 19cd7fd..99b7ab9 100644
--- a/lib/vdsm/storage/guarded.py
+++ b/lib/vdsm/storage/guarded.py
@@ -132,3 +132,7 @@
def _key(self):
return type(self), self.ns, self.name, self.mode
+
+ def __repr__(self):
+ return "<%s ns=%s, name=%s, mode=%s at 0x%x>" % (
+ self.__class__.__name__, self.ns, self.name, self.mode, id(self))
diff --git a/tests/storage_resourcemanager_test.py
b/tests/storage_resourcemanager_test.py
index bc3002c..64cdd62 100644
--- a/tests/storage_resourcemanager_test.py
+++ b/tests/storage_resourcemanager_test.py
@@ -757,3 +757,13 @@
lock.release()
expected.append(('releaseResource', (lock.ns, lock.name), {}))
self.assertEqual(expected, fake_rm.__calls__)
+
+ def test_repr(self):
+ mode = resourceManager.LockType.shared
+ lock = resourceManager.ResourceManagerLock('ns', 'name', mode)
+ lock_string = str(lock)
+ self.assertIn("ResourceManagerLock", lock_string)
+ self.assertIn("ns=ns", lock_string)
+ self.assertIn("name=name", lock_string)
+ self.assertIn("mode=" + mode, lock_string)
+ self.assertIn("%x" % id(lock), lock_string)
diff --git a/tests/storage_volume_test.py b/tests/storage_volume_test.py
index f6f0037..e9cec41 100644
--- a/tests/storage_volume_test.py
+++ b/tests/storage_volume_test.py
@@ -96,6 +96,15 @@
lock.release()
self.assertEqual(expected, manifest.__calls__)
+ def test_repr(self):
+ lock = volume.VolumeLease(HOST_ID, 'dom', 'img', 'vol')
+ lock_string = str(lock)
+ self.assertIn("VolumeLease", lock_string)
+ self.assertIn("ns=04_lease_dom", lock_string)
+ self.assertIn("name=vol", lock_string)
+ self.assertIn("mode=exclusive", lock_string)
+ self.assertIn("%x" % id(lock), lock_string)
+
@expandPermutations
class VolumeManifestTest(VdsmTestCase):
--
To view, visit
https://gerrit.ovirt.org/64976
To unsubscribe, visit
https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I708cf5be83790a85792ae1cddd564db80521e8df
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>