From d705482f0975ed64e9b36f785209b0e13f6b4a65 Mon Sep 17 00:00:00 2001 From: Guillaume Abrioux Date: Fri, 7 Feb 2020 15:22:46 +0100 Subject: [PATCH] ceph-volume: add unit test test_safe_prepare_osd_already_created 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 (cherry picked from commit ccf92d718d6f363f6ca3b7e8499b68beb8b30c06) --- .../ceph_volume/tests/devices/lvm/test_prepare.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/ceph-volume/ceph_volume/tests/devices/lvm/test_prepare.py b/src/ceph-volume/ceph_volume/tests/devices/lvm/test_prepare.py index b7a69e993a1e6..f16b2ffffce63 100644 --- a/src/ceph-volume/ceph_volume/tests/devices/lvm/test_prepare.py +++ b/src/ceph-volume/ceph_volume/tests/devices/lvm/test_prepare.py @@ -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): -- 2.39.5