Skip to content

Commit da97fd0

Browse files
committed
Use mock to avoid pre-checks for device add methods
This will allow coverage in some unusual error paths. Signed-off-by: mulhern <[email protected]>
1 parent 10ed9f0 commit da97fd0

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

src/stratis_cli/_actions/_pool.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -550,7 +550,7 @@ def add_data_devices(namespace: Namespace): # pylint: disable=too-many-locals
550550
if return_code != StratisdErrors.OK: # pragma: no cover
551551
raise StratisCliEngineError(return_code, message)
552552

553-
if not added or len(devs_added) < len(blockdevs): # pragma: no cover
553+
if not added or len(devs_added) < len(blockdevs):
554554
devnodes_added = [
555555
MODev(info).Devnode()
556556
for (object_path, info) in devs(

tests/integration/pool/test_add.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@
1515
Test 'add'.
1616
"""
1717

18+
# isort: STDLIB
19+
from unittest.mock import create_autospec
20+
1821
# isort: FIRSTPARTY
1922
from dbus_client_gen import DbusClientUniqueResultError
2023

@@ -173,6 +176,14 @@ def test_add_data(self):
173176
command_line = self._MENU + [self._POOLNAME] + self._SECOND_DEVICES
174177
self.check_error(StratisCliInUseSameTierError, command_line, _ERROR)
175178

179+
def test_add_data_mock_check(self):
180+
"""
181+
Test that adding the same devices to the data tier in a different pool fails.
182+
"""
183+
command_line = self._MENU + [self._POOLNAME] + self._SECOND_DEVICES
184+
with create_autospec("_actions._pool._check_opposite_tier", return_value=None):
185+
self.check_error(StratisCliEngineError, command_line, _ERROR)
186+
176187

177188
class AddCacheTestCase1(SimTestCase):
178189
"""

0 commit comments

Comments
 (0)