[3.13] gh-104860: Fix allow_abbrev=False for single-dash long options (GH-124340) (GH-124749)

(cherry picked from commit 49e105f948)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
This commit is contained in:
Miss Islington (bot) 2024-10-07 23:25:13 +02:00 committed by GitHub
parent 16127de2eb
commit aa648c21e9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 20 additions and 1 deletions

View file

@ -957,6 +957,23 @@ class TestOptionalsDisallowLongAbbreviationPrefixChars(ParserTestCase):
]
class TestOptionalsDisallowSingleDashLongAbbreviation(ParserTestCase):
"""Do not allow abbreviations of long options at all"""
parser_signature = Sig(allow_abbrev=False)
argument_signatures = [
Sig('-foo'),
Sig('-foodle', action='store_true'),
Sig('-foonly'),
]
failures = ['-foon 3', '-food', '-food -foo 2']
successes = [
('', NS(foo=None, foodle=False, foonly=None)),
('-foo 3', NS(foo='3', foodle=False, foonly=None)),
('-foonly 7 -foodle -foo 2', NS(foo='2', foodle=True, foonly='7')),
]
class TestDisallowLongAbbreviationAllowsShortGrouping(ParserTestCase):
"""Do not allow abbreviations of long options at all"""