László Attila Tóth added the comment: Unfortunatelly the implementation bugous as of now. I wrote additional tests.
self.parser = ErrorRaisingArgumentParser() self.parser.add_argument('-a', action='store_true') self.parser.add_argument('-b') self.parser.add_argument('rem', nargs=argparse.REMAINDER) self.assertEquals(self.parser.parse_args('-b 4 -a -b 5'.split()), NS(a=True, b='5', rem=[])) This part is OK. But with the new option: self.parser.disable_interspersed_args() self.assertEquals(self.parser.parse_args('-b 4 -a -b 5'.split()), NS(a=False, b='4', rem=['-a', '-b', '5'])) This assertation also passes because it contains the actual result, which is unexpected. This is because the code doesn't handle properly the arguments that are non-options, such as '-b' in this case. I can't see a good solution for this. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue13966> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com