Test Optionals where option strings are subsets of each other
| 396 | |
| 397 | |
| 398 | class TestOptionalsSingleDashSubsetAmbiguous(ParserTestCase): |
| 399 | """Test Optionals where option strings are subsets of each other""" |
| 400 | |
| 401 | argument_signatures = [Sig('-f'), Sig('-foobar'), Sig('-foorab')] |
| 402 | failures = ['-f', '-foo', '-fo', '-foo b', '-foob', '-fooba', '-foora'] |
| 403 | successes = [ |
| 404 | ('', NS(f=None, foobar=None, foorab=None)), |
| 405 | ('-f a', NS(f='a', foobar=None, foorab=None)), |
| 406 | ('-fa', NS(f='a', foobar=None, foorab=None)), |
| 407 | ('-foa', NS(f='oa', foobar=None, foorab=None)), |
| 408 | ('-fooa', NS(f='ooa', foobar=None, foorab=None)), |
| 409 | ('-foobar a', NS(f=None, foobar='a', foorab=None)), |
| 410 | ('-foorab a', NS(f=None, foobar=None, foorab='a')), |
| 411 | ] |
| 412 | |
| 413 | |
| 414 | class TestOptionalsSingleDashAmbiguous(ParserTestCase): |