summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_argparse.py
Commit message (Collapse)AuthorAgeFilesLines
* gh-90473: Make chmod a dummy on WASI, skip chmod tests (GH-93534)Christian Heimes2022-06-061-0/+1
| | | WASI does not have the ``chmod(2)`` syscall yet.
* bpo-45046: Support context managers in unittest (GH-28045)Serhiy Storchaka2022-05-081-4/+2
| | | | | | Add methods enterContext() and enterClassContext() in TestCase. Add method enterAsyncContext() in IsolatedAsyncioTestCase. Add function enterModuleContext().
* gh-88753: Make BooleanOptionalAction's addition of default to help more ↵Toshio Kuratomi2022-05-031-11/+15
| | | | | | | | | | | | | | | | similar to other actions (#27808) Help for other actions omit the default value if default is SUPPRESS or already contains the special format string '%(default)'. Add those special cases to BooleanOptionalAction's help formatting too. Fixes https://bugs.python.org/issue44587 so that default=SUPPRESS is not emitted. Fixes https://bugs.python.org/issue38956 as this code will detect whether '%(default)s' has already been specified in the help string. Signed-off-by: Micky Yun Chan (michiboo): <chanmickyyun@gmail.com> Co-authored-by: Micky Yun Chan <michan@redhat.com>
* bpo-39716: Raise on conflicting subparser names. (GH-18605)Antony Lee2022-05-011-0/+13
| | | | | | | | | | | Raise an ArgumentError when the same subparser name is added twice to an ArgumentParser. This is consistent with the (default) behavior when the same option string is added twice to an ArgumentParser. (Support for `conflict_handler="resolve"` could be considered as a followup feature, although real use cases seem even rarer than "resolve"ing option-strings.) Automerge-Triggered-By: GH:rhettinger
* gh-91832: Add 'required' attr to argparse.Action repr (GH-91841)Abhigyan Bose2022-04-281-2/+4
| | | | | | | | | # Adding 'required' to names in Lib.argparse.Action gh-91832: Added 'required' to the list `names` in `Lib.argparse.Action`. Changed constant strings that test the Action object. Automerge-Triggered-By: GH:merwok
* gh-91984: Fix trailing spaces in multiline test strings in test_argparse ↵Abhigyan Bose2022-04-281-4/+2
| | | | (GH-91986)
* bpo-14156: Make argparse.FileType work correctly for binary file modes when ↵MojoVampire2022-03-061-13/+102
| | | | | | | argument is '-' (GH-13165) Also made modes containing 'a' or 'x' act the same as a mode containing 'w' when argument is '-' (so 'a'/'x' return sys.stdout like 'w', and 'ab'/'xb' return sys.stdout.buffer like 'wb').
* bpo-46080: fix argparse help generation exception in edge case (GH-30111)Felix Fontein2022-01-201-2/+5
| | | | | Fix an uncaught exception during help text generation when argparse.BooleanOptionalAction is used with default=argparse.SUPPRESS and help is specified.
* bpo-46411: Remove unnecessary calls to sys.exc_info() in tests (GH-30638)Irit Katriel2022-01-181-6/+4
|
* bpo-22047: [argparse] deprecate nested argument groups and mutually ↵Irit Katriel2021-12-161-2/+12
| | | | exclusive groups (GH-30098)
* bpo-26952: [argparse] clearer error when formatting an empty mutually… ↵Irit Katriel2021-12-151-0/+7
| | | | (GH-30099)
* bpo-45235: Revert an argparse bugfix that caused a regression (GH-29525)Raymond Hettinger2021-11-121-6/+0
| | | | | * Revert "bpo-45235: Fix argparse overrides namespace with subparser defaults (GH-28420) (GH-28443)" This reverts commit a18d52269ab6071a605d6c72f6af585a4c533ca4.
* bpo-24444: fix an error in argparse help when help for an option is blank ↵andrei kulakov2021-10-131-0/+36
| | | | (GH-28050)
* bpo-45229: Remove test_main in many tests (GH-28405)Serhiy Storchaka2021-09-191-5/+2
| | | | | | | | | Instead of explicitly enumerate test classes for run_unittest() use the unittest ability to discover tests. This also makes these tests discoverable and runnable with unittest. load_tests() can be used for dynamic generating tests and adding doctests. setUpModule(), tearDownModule() and addModuleCleanup() can be used for running code before and after all module tests.
* bpo-45235: Fix argparse overrides namespace with subparser defaults (GH-28420)Adam Schwalm2021-09-181-0/+6
|
* bpo-38956: don't print BooleanOptionalAction's default twice (GH-27672)Maximilian Hils2021-08-161-7/+14
| | | | Co-authored-by: Micky Yun Chan <michan@redhat.com>
* bpo-37880: for argparse add_argument with action='store_const', const now ↵Jack DeVries2021-07-311-0/+19
| | | | defaults to None. (GH-26707)
* bpo-29298: Fix crash with required subparsers without dest (GH-3680)Anthony Sottile2021-07-231-0/+24
| | | Automerge-Triggered-By: GH:encukou
* bpo-43651: PEP 597: Fix EncodingWarning in some tests (GH-25142)Inada Naoki2021-04-021-6/+8
| | | | | | | | | | | | | * test__xxsubinterpreters * test_builtin * test_doctest * test_exceptions * test_opcodes * test_support * test_argparse * test_baseexception * test_bdb * test_bool * test_asdl_parser
* bpo-9694: Fix misleading phrase "optional arguments" (GH-23858)Raymond Hettinger2020-12-231-56/+56
|
* bpo-40275: Use new test.support helper submodules in tests (GH-21448)Hai Shi2020-08-031-2/+3
|
* bpo-40862: Raise TypeError when const is given to ↵Rémi Lapeyre2020-06-051-0/+8
| | | | argparse.BooleanOptionalAction (GH-20623)
* bpo-39058: Preserve attribute order in argparse Namespace reprs. (GH-17621)Raymond Hettinger2020-05-181-1/+1
|
* bpo-9495: avoid confusing chained exception in argparse test (GH-17120)alclarks2020-02-211-1/+2
|
* bpo-39546: argparse: Honor allow_abbrev=False for specified prefix_chars ↵Kyle Meyer2020-02-181-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | (GH-18337) When `allow_abbrev` was first added, disabling the abbreviation of long options broke the grouping of short flags ([bpo-26967](https://bugs.python.org/issue26967)). As a fix, b1e4d1b603 (contained in v3.8) ignores `allow_abbrev=False` for a given argument string if the string does _not_ start with "--" (i.e. it doesn't look like a long option). This fix, however, doesn't take into account that long options can start with alternative characters specified via `prefix_chars`, introducing a regression: `allow_abbrev=False` has no effect on long options that start with an alternative prefix character. The most minimal fix would be to replace the "starts with --" check with a "starts with two prefix_chars characters". But `_get_option_tuples` already distinguishes between long and short options, so let's instead piggyback off of that check by moving the `allow_abbrev` condition into `_get_option_tuples`. https://bugs.python.org/issue39546
* bpo-38438: Simplify argparse "star nargs" usage. (GH-17106)Brandt Bucher2019-11-111-7/+7
|
* bpo-8538: Add support for boolean actions to argparse (GH-11478)Rémi Lapeyre2019-09-131-11/+45
| | | Co-Authored-By: remilapeyre <remi.lapeyre@henki.fr>
* bpo-9938: Add optional keyword argument exit_on_error to ↵Hai Shi2019-09-121-0/+15
| | | | | | | | | | | | argparse.ArgumentParser (GH-15362) Co-Authored-by: Xuanji Li <xuanji@gmail.com> https://bugs.python.org/issue9938 Automerge-Triggered-By: @matrixise
* bpo-29553: Fix ArgumentParser.format_usage() for mutually exclusive groups ↵Flavian Hautbois2019-08-251-0/+40
| | | | | (GH-14976) Co-authored-by: Andrew Nester <andrew.nester.dev@gmail.com>
* bpo-16970: Adding error message for invalid args (GH-14844)tmblweed2019-08-021-1/+29
| | | | | | | | BPO -16970: Adding error message for invalid args Applied the patch argparse-v2 patch issue 16970, ran patch check and the test suite, test_argparse with 0 errors https://bugs.python.org/issue16970
* bpo-26967: fix flag grouping with allow_abbrev=False (GH-14316)Zac Hatfield-Dodds2019-07-141-0/+19
| | | | | | | | | | | The `allow_abbrev` option for ArgumentParser is documented and intended to disable support for unique prefixes of --options, which may sometimes be ambiguous due to deferred parsing. However, the initial implementation also broke parsing of grouped short flags, such as `-ab` meaning `-a -b` (or `-a=b`). Checking the argument for a leading `--` before rejecting it fixes this. This was prompted by pytest-dev/pytest#5469, so a backport to at least 3.8 would be great :smile: And this is my first PR to CPython, so please let me know if I've missed anything! https://bugs.python.org/issue26967
* Remove unused imports in tests (GH-14518)Victor Stinner2019-07-011-1/+0
|
* bpo-37150: Throw ValueError if FileType class object was passed in ↵zygocephalus2019-06-071-0/+18
| | | | | | | | | | | | | | add_argument (GH-13805) There is a possibility that someone (like me) accidentally will omit parentheses with `FileType` arguments after `FileType`, and parser will contain wrong file until someone will try to use it. Example: ```python parser = argparse.ArgumentParser() parser.add_argument('-x', type=argparse.FileType) ``` https://bugs.python.org/issue37150
* bpo-23378: Add an extend action to argparse (GH-13305)Batuhan Taşkaya2019-05-211-0/+9
| | | | | | Add an extend action to argparse https://bugs.python.org/issue23378
* bpo-22831: Use "with" to avoid possible fd leaks in tests (part 2). (GH-10929)Serhiy Storchaka2019-03-051-12/+8
|
* bpo-34582: Adds JUnit XML output for regression tests (GH-9210)Steve Dower2018-09-181-4/+14
|
* bpo-13041: Use shutil.get_terminal_size() in argparse.HelpFormatter (GH-8459)Berker Peksag2018-07-251-2/+3
|
* bpo-11874: fix assertion failure in argparse metavar handling (GH-1826)wim glenn2018-06-081-9/+33
| | | | | | - bugfix and test for fragile metavar handling in argparse (see bpo-24089, bpo-14046, bpo-25058, bpo-11874) - also fixes some incorrect tests that did not make 1-element tuples correctly
* bpo-33109: argparse subparsers are once again not required by default (GH-6919)Ned Deily2018-05-241-1/+3
| | | | | | | | | bpo-26510 in 3.7.0a2 changed the behavior of argparse to make subparsers required by default, returning to the behavior of 2.7 and 3.2. The behavior was changed in 3.3 to be no longer required. While it might make more sense to have the default to required, compatibility with 3.3 through 3.6 is probably less disruptive than trying to reintroduce compatibility with 2.7 at this point. This change restores the 3.6 behavior.
* bpo-26510: make argparse subparsers required by default (#3027)Anthony Sottile2017-09-201-1/+36
| | | | | | This fixes a regression from Python 2. To get optional subparsers, use the new parameter ``add_subparsers(required=False)``. Patch by Anthony Sottile.
* bpo-14191 Add parse_intermixed_args. (#3319)R. David Murray2017-09-071-0/+87
| | | This adds support for parsing a command line where options and positionals are intermixed as is common in many unix commands. This is paul.j3's patch with a few tweaks.
* bpo-29783: Replace codecs.open() with io.open() (#599)Victor Stinner2017-06-161-1/+1
|
* Issue #29290: Merge 3.5.Xiang Zhang2017-01-221-0/+17
|\
| * Issue #29290: argparse help messages won't wrap at non-breaking spaces.Xiang Zhang2017-01-221-0/+17
| |
* | Issue #28300: Merge from 3.5Berker Peksag2016-09-281-1/+1
|\ \ | |/
| * Issue #28300: Fix typos, patch by Shlomi FishBerker Peksag2016-09-281-1/+1
| |
* | Issue #12713: reverted fix pending further discussion.Vinay Sajip2016-08-231-65/+27
| |
* | Closes #12713: Allowed abbreviation of subcommands in argparse.Vinay Sajip2016-08-181-27/+65
| |
* | Merge typo fixes from 3.5Martin Panter2016-04-051-5/+5
|\ \ | |/
| * Fix typos in documentation and commentsMartin Panter2016-04-051-5/+5
| |