assert 'Cannot use device (/dev/var/foo)' in str(error)
assert 'A vg/lv path or an existing device is needed' in str(error)
+
class TestPrepare(object):
def test_main_spits_help_with_no_arguments(self, capsys):
assert 'Use the bluestore objectstore' in stdout
assert 'A physical device or logical' in stdout
+ def test_excludes_filestore_bluestore_flags(self, capsys):
+ with pytest.raises(SystemExit):
+ lvm.prepare.Prepare(argv=['--data', '/dev/sdfoo', '--filestore', '--bluestore']).main()
+ stdout, stderr = capsys.readouterr()
+ expected = 'Cannot use --filestore (filestore) with --bluestore (bluestore)'
+ assert expected in stdout
+
+ def test_excludes_other_filestore_bluestore_flags(self, capsys):
+ with pytest.raises(SystemExit):
+ lvm.prepare.Prepare(argv=[
+ '--bluestore', '--data', '/dev/sdfoo',
+ '--journal', '/dev/sf14',
+ ]).main()
+ stdout, stderr = capsys.readouterr()
+ expected = 'Cannot use --bluestore (bluestore) with --journal (filestore)'
+ assert expected in stdout
+
+ def test_excludes_block_and_journal_flags(self, capsys):
+ with pytest.raises(SystemExit):
+ lvm.prepare.Prepare(argv=[
+ '--bluestore', '--data', '/dev/sdfoo', '--block.db', 'vg/ceph1',
+ '--journal', '/dev/sf14',
+ ]).main()
+ stdout, stderr = capsys.readouterr()
+ expected = 'Cannot use --block.db (bluestore) with --journal (filestore)'
+ assert expected in stdout
+
class TestGetJournalLV(object):
stdout, stderr = capsys.readouterr()
assert 'optional arguments' in stdout
assert 'positional arguments' in stdout
-