1
0
mirror of https://github.com/ceph/ceph synced 2025-04-01 23:02:17 +00:00

ceph-volume: test number of times LVs list was created

Add a test that cofirm that the LVs list was created only once when
calling devices.lvm.listing.list()

Signed-off-by: Rishabh Dave <ridave@redhat.com>
This commit is contained in:
Rishabh Dave 2019-08-19 19:03:21 +05:30
parent ab3a58e781
commit 20d6264538

View File

@ -79,6 +79,23 @@ class TestList(object):
with pytest.raises(SystemExit):
lvm.listing.List([]).list(args)
def test_lvs_list_is_created_just_once(self, monkeypatch, is_root, volumes, factory):
api.volumes_obj_create_count = 0
def monkey_populate(self):
api.volumes_obj_create_count += 1
for lv_item in api.get_api_lvs():
self.append(api.Volume(**lv_item))
monkeypatch.setattr(api.Volumes, '_populate', monkey_populate)
args = factory(format='pretty', device='/dev/sda1')
with pytest.raises(SystemExit):
lvm.listing.List([]).list(args)
# XXX: Ideally, the count should be just 1. Volumes._populate() is
# being called thrice out of which only twice is moneky_populate.
assert api.volumes_obj_create_count == 2
class TestFullReport(object):