]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-deploy.git/commitdiff
[RM-12150] Require at least one host for 'mon destroy'
authorTravis Rhoden <trhoden@redhat.com>
Wed, 1 Jul 2015 21:01:40 +0000 (14:01 -0700)
committerTravis Rhoden <trhoden@redhat.com>
Mon, 6 Jul 2015 16:39:36 +0000 (09:39 -0700)
Signed-off-by: Travis Rhoden <trhoden@redhat.com>
ceph_deploy/mon.py
ceph_deploy/tests/parser/test_mon.py

index dd880aec6ae103c19648de61c7a9a6443001bf85..93ede58a1837ee170b098dabd98a2e568dfbe7e6 100644 (file)
@@ -511,7 +511,7 @@ def make(parser):
     )
     mon_destroy.add_argument(
         'mon',
-        nargs='*',
+        nargs='+',
     )
 
     parser.set_defaults(
index 00ec1cfb80dd488737e6b33dfb3dadf0b6b5f694..4c0310174a0461611bc11310545f533930f8ce71 100644 (file)
@@ -2,7 +2,7 @@ import pytest
 
 from ceph_deploy.cli import get_parser
 
-SUBCMDS_WITH_ARGS = ['add', 'destroy']
+SUBCMDS_WITH_ARGS = ['add', 'destroy', 'create']
 SUBCMDS_WITHOUT_ARGS = ['create', 'create-initial']
 
 
@@ -19,18 +19,15 @@ class TestParserMON(object):
         assert 'positional arguments:' in out
         assert 'optional arguments:' in out
 
-    @pytest.mark.skipif(reason="http://tracker.ceph.com/issues/12150")
     @pytest.mark.parametrize('cmd', SUBCMDS_WITH_ARGS)
     def test_mon_valid_subcommands_with_args(self, cmd, capsys):
-        with pytest.raises(SystemExit):
-            self.parser.parse_args(['mon'] + ['%s' % cmd] + ['host1'])
-        out, err = capsys.readouterr()
-        assert 'too few arguments' in err
-        assert 'invalid choice' not in err
+        args = self.parser.parse_args(['mon'] + ['%s' % cmd] + ['host1'])
+        assert args.subcommand == cmd
 
     @pytest.mark.parametrize('cmd', SUBCMDS_WITHOUT_ARGS)
     def test_mon_valid_subcommands_without_args(self, cmd, capsys):
-        self.parser.parse_args(['mon'] + ['%s' % cmd])
+        args = self.parser.parse_args(['mon'] + ['%s' % cmd])
+        assert args.subcommand == cmd
 
     def test_mon_invalid_subcommand(self, capsys):
         with pytest.raises(SystemExit):
@@ -111,7 +108,6 @@ class TestParserMON(object):
         out, err = capsys.readouterr()
         assert 'usage: ceph-deploy mon destroy' in out
 
-    @pytest.mark.skipif(reason="http://tracker.ceph.com/issues/12150")
     def test_mon_destroy_no_host_raises_err(self):
         with pytest.raises(SystemExit):
             self.parser.parse_args('mon destroy'.split())