summaryrefslogtreecommitdiff
path: root/cmd2
diff options
context:
space:
mode:
authorEric Lin <anselor@gmail.com>2018-05-19 15:54:08 -0400
committerEric Lin <anselor@gmail.com>2018-05-19 15:54:08 -0400
commit1c1da0273faf3ab2316b4af9281cf15869b3da20 (patch)
tree100044bd28c56ab2b30f356e3ecfbd02af78d48b /cmd2
parentf44871b5d055651bb4991580b64b18b87568fd7a (diff)
downloadcmd2-git-1c1da0273faf3ab2316b4af9281cf15869b3da20.tar.gz
Changed some unit tests to use pytest-mock instead of mocker/monkeypatch because they were failing for me.
Added detection of ==SUPPRESS== in subcommand group names to avoid printing it in the help hint. Added some examples to tab_autocompletion to demonstrate how to tie in to cmd2 path_complete
Diffstat (limited to 'cmd2')
-rwxr-xr-xcmd2/argparse_completer.py5
-rw-r--r--cmd2/pyscript_bridge.py4
2 files changed, 6 insertions, 3 deletions
diff --git a/cmd2/argparse_completer.py b/cmd2/argparse_completer.py
index bf6a0e90..1995b8d5 100755
--- a/cmd2/argparse_completer.py
+++ b/cmd2/argparse_completer.py
@@ -565,7 +565,10 @@ class AutoCompleter(object):
prefix = '{}{}'.format(flags, param)
else:
- prefix = '{}'.format(str(action.dest).upper())
+ if action.dest != SUPPRESS:
+ prefix = '{}'.format(str(action.dest).upper())
+ else:
+ prefix = ''
prefix = ' {0: <{width}} '.format(prefix, width=20)
pref_len = len(prefix)
diff --git a/cmd2/pyscript_bridge.py b/cmd2/pyscript_bridge.py
index 277d8531..196be82b 100644
--- a/cmd2/pyscript_bridge.py
+++ b/cmd2/pyscript_bridge.py
@@ -230,7 +230,7 @@ class ArgparseFunctor:
if action.option_strings:
cmd_str[0] += '{} '.format(action.option_strings[0])
- if isinstance(value, List) or isinstance(value, Tuple):
+ if isinstance(value, List) or isinstance(value, tuple):
for item in value:
item = str(item).strip()
if ' ' in item:
@@ -250,7 +250,7 @@ class ArgparseFunctor:
cmd_str[0] += '{} '.format(self._args[action.dest])
traverse_parser(action.choices[self._args[action.dest]])
elif isinstance(action, argparse._AppendAction):
- if isinstance(self._args[action.dest], List) or isinstance(self._args[action.dest], Tuple):
+ if isinstance(self._args[action.dest], list) or isinstance(self._args[action.dest], tuple):
for values in self._args[action.dest]:
process_flag(action, values)
else: