]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
ceph-volume: add unit test test_safe_prepare_osd_already_created 33086/head
authorGuillaume Abrioux <gabrioux@redhat.com>
Fri, 7 Feb 2020 14:22:46 +0000 (15:22 +0100)
committerGuillaume Abrioux <gabrioux@redhat.com>
Fri, 7 Feb 2020 15:42:17 +0000 (16:42 +0100)
This commit adds a new unit test
`test_safe_prepare_osd_already_created()` in order to test when
`is_ceph_device()` returns `True` `RuntimeError` is well raised.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
src/ceph-volume/ceph_volume/tests/devices/lvm/test_prepare.py

index b7a69e993a1e6bc69ad66dc3c225c7eca5d1073a..f16b2ffffce63a2085bc96097fd86407762b5839 100644 (file)
@@ -1,5 +1,6 @@
 import pytest
 from ceph_volume.devices import lvm
+from mock.mock import patch, Mock
 
 
 class TestLVM(object):
@@ -102,6 +103,17 @@ class TestPrepare(object):
         expected = '--journal is required when using --filestore'
         assert expected in str(error.value)
 
+    @patch('ceph_volume.devices.lvm.prepare.api.is_ceph_device')
+    def test_safe_prepare_osd_already_created(self, m_is_ceph_device):
+        m_is_ceph_device.return_value = True
+        with pytest.raises(RuntimeError) as error:
+            prepare = lvm.prepare.Prepare(argv=[])
+            prepare.args = Mock()
+            prepare.args.data = '/dev/sdfoo'
+            prepare.get_lv = Mock()
+            prepare.safe_prepare()
+            expected = 'skipping {}, it is already prepared'.format('/dev/sdfoo')
+            assert expected in str(error.value)
 
 class TestGetJournalLV(object):