diff options
author | andrei kulakov <andrei.avk@gmail.com> | 2021-10-13 16:31:51 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-13 16:31:51 (GMT) |
commit | 6fafc25aea8689048314b5bf7a9bb986bb1ce238 (patch) | |
tree | b28f03443e4f25545a2c17b536089739a917de47 /Lib/test/test_argparse.py | |
parent | b9e687618d3489944f29adbd2be50b46940c9e70 (diff) | |
download | cpython-6fafc25aea8689048314b5bf7a9bb986bb1ce238.zip cpython-6fafc25aea8689048314b5bf7a9bb986bb1ce238.tar.gz cpython-6fafc25aea8689048314b5bf7a9bb986bb1ce238.tar.bz2 |
bpo-24444: fix an error in argparse help when help for an option is blank (GH-28050)
Diffstat (limited to 'Lib/test/test_argparse.py')
-rw-r--r-- | Lib/test/test_argparse.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/Lib/test/test_argparse.py b/Lib/test/test_argparse.py index 8babab3..21732d1 100644 --- a/Lib/test/test_argparse.py +++ b/Lib/test/test_argparse.py @@ -2164,6 +2164,42 @@ class TestAddSubparsers(TestCase): wrap\N{NO-BREAK SPACE}at non-breaking spaces ''')) + def test_help_blank(self): + # Issue 24444 + parser = ErrorRaisingArgumentParser( + prog='PROG', description='main description') + parser.add_argument( + 'foo', + help=' ') + self.assertEqual(parser.format_help(), textwrap.dedent('''\ + usage: PROG [-h] foo + + main description + + positional arguments: + foo + + options: + -h, --help show this help message and exit + ''')) + + parser = ErrorRaisingArgumentParser( + prog='PROG', description='main description') + parser.add_argument( + 'foo', choices=[], + help='%(choices)s') + self.assertEqual(parser.format_help(), textwrap.dedent('''\ + usage: PROG [-h] {} + + main description + + positional arguments: + {} + + options: + -h, --help show this help message and exit + ''')) + def test_help_alternate_prefix_chars(self): parser = self._get_parser(prefix_chars='+:/') self.assertEqual(parser.format_usage(), |