bpo-40862: Raise TypeError when const is given to argparse.BooleanOptionalAction (GH-20623) (GH-20664)

This commit is contained in:
Miss Islington (bot) 2020-06-05 19:31:18 -07:00 committed by GitHub
parent 15fec5627a
commit d5e7348e41
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 1 deletions

View file

@ -857,7 +857,6 @@ class BooleanOptionalAction(Action):
def __init__(self, def __init__(self,
option_strings, option_strings,
dest, dest,
const=None,
default=None, default=None,
type=None, type=None,
choices=None, choices=None,

View file

@ -700,6 +700,14 @@ class TestBooleanOptionalAction(ParserTestCase):
('--no-foo --foo', NS(foo=True)), ('--no-foo --foo', NS(foo=True)),
] ]
def test_const(self):
# See bpo-40862
parser = argparse.ArgumentParser()
with self.assertRaises(TypeError) as cm:
parser.add_argument('--foo', const=True, action=argparse.BooleanOptionalAction)
self.assertIn("got an unexpected keyword argument 'const'", str(cm.exception))
class TestBooleanOptionalActionRequired(ParserTestCase): class TestBooleanOptionalActionRequired(ParserTestCase):
"""Tests BooleanOptionalAction required""" """Tests BooleanOptionalAction required"""