
"Ic           @   s  d  d k  Z  d  d k Z d  d k Z d  d k Z d  d k Z d  d k Z d  d k l Z d  d k l Z d  d k	 l
 Z
 l Z l Z l Z l Z l Z l Z l Z l Z l Z l Z l Z l Z l Z d  d k	 l Z d  d k	 l Z y e e f Wn e j
 o d] \ Z Z n Xe e i d	   Z d
 e  f d     YZ! d e f d     YZ" d e i# f d     YZ$ d e$ f d     YZ% d e$ f d     YZ& d e$ f d     YZ' d e$ f d     YZ( h d d 6d d 6d^ d 6d` d 6Z) d   Z* d e f d      YZ+ d! e$ f d"     YZ, d# e$ f d$     YZ- d% e$ f d&     YZ. d' e$ f d(     YZ/ d) e$ f d*     YZ0 d+ e$ f d,     YZ1 d- e$ f d.     YZ2 d/ e$ f d0     YZ3 d1 e$ f d2     YZ4 d3 e$ f d4     YZ5 d5 e$ f d6     YZ6 d7 e$ f d8     YZ7 d9 e$ f d:     YZ8 d; e$ f d<     YZ9 d= e$ f d>     YZ: d? e$ f d@     YZ; dA e$ f dB     YZ< dC e$ f dD     YZ= dE e$ f dF     YZ> dG e$ f dH     YZ? dI e$ f dJ     YZ@ dK e@ f dL     YZA dM e@ f dN     YZB dO e$ f dP     YZC dQ ZD dR ZE dS ZF dT ZG dU e$ f dV     YZH dW e$ f dX     YZI dY e$ f dZ     YZJ d[   ZK eL d\ j o eK   n d S(a   iN(   t   StringIO(   t   test_support(   t   make_optiont   Optiont   IndentedHelpFormattert   TitledHelpFormattert   OptionParsert   OptionContainert   OptionGroupt   SUPPRESS_HELPt   SUPPRESS_USAGEt   OptionErrort   OptionConflictErrort   BadOptionErrort   OptionValueErrort   Values(   t   _match_abbrev(   t
   _parse_numi   i    t    t   InterceptedErrorc           B   s#   e  Z d d d d   Z d   Z RS(   c         C   s   | |  _  | |  _ | |  _ d  S(   N(   t   error_messaget   exit_statust   exit_message(   t   selfR   R   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   __init__&   s    		c         C   s   |  i  p |  i p d S(   Ns   intercepted error(   R   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   __str__.   s    N(   t   __name__t
   __module__t   NoneR   R   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR   %   s   t   InterceptingOptionParserc           B   s    e  Z d  d d  Z d   Z RS(   i    c         C   s   t  d | d |   d  S(   NR   R   (   R   (   R   t   statust   msg(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   exit2   s    c         C   s   t  d |   d  S(   NR   (   R   (   R   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   error5   s    N(   R   R   R   R    R!   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR   1   s   t   BaseTestc           B   sD   e  Z d    Z d   Z d   Z d d d  Z d   Z d   Z RS(   c         C   sb   |  i  i |  \ } } t |  } |  i | | d t    |  i | | d t    | | f S(   s  Assert the options are what we expected when parsing arguments.

        Otherwise, fail with a nicely formatted message.

        Keyword arguments:
        args -- A list of arguments to parse with OptionParser.
        expected_opts -- The options expected.
        expected_positional_args -- The positional arguments expected.

        Returns the options and positional args for further testing.
        sJ   
Options are %(optdict)s.
Should be %(expected_opts)s.
Args were %(args)s.sj   
Positional arguments are %(positional_args)s.
Should be %(expected_positional_args)s.
Args were %(args)s.(   t   parsert
   parse_argst   varst   assertEqualt   locals(   R   t   argst   expected_optst   expected_positional_argst   optionst   positional_argst   optdict(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   assertParseOK:   s    c         C   s   | d j o
 d } n | d j o
 h  } n y | | |   Wny | j
 om } t |  } t | t  o* |  i | i |  d | i | f  n |  i | | d | | f  | SX|  i d t	    d S(   s-  
        Assert that the expected exception is raised when calling a
        function, and that the right error message is included with
        that exception.

        Arguments:
          func -- the function to call
          args -- positional arguments to `func`
          kwargs -- keyword arguments to `func`
          expected_exception -- exception that should be raised
          expected_message -- expected exception message (or pattern
            if a compiled regex object)

        Returns the exception raised for further testing.
        sL   expected exception message pattern:
/%s/
actual exception message:
'''%s'''
sH   expected exception message:
'''%s'''
actual exception message:
'''%s'''
sn   expected exception %(expected_exception)s not raised
called %(func)r
with args %(args)r
and kwargs %(kwargs)r
N(    (
   R   t   strt
   isinstancet   retypet   assert_t   searcht   patternR&   t   failR'   (   R   t   funcR(   t   kwargst   expected_exceptiont   expected_messaget   errt   actual_message(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   assertRaisesX   s"    

	c         C   sP   y |  i  i |  Wn( t j
 o } |  i | i |  n X|  i d  d S(   s   
        Assert the parser fails with the expected message.  Caller
        must ensure that self.parser is an InterceptingOptionParser.
        s   expected parse failureN(   R#   R$   R   R&   R   t   assertFalse(   R   t   cmdline_argst   expected_outputR:   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   assertParseFail   s
    i    c   	   	   C   s  t  i } t | d d  } yW z7 t   t  _ | o | t  i _ n |  i i |  Wd t  i i   } | t  _ XWn t	 j
 o } |  i
 t |  t i j d t |   | | j o! |  i d | d | d  n |  i | i |  |  i | i |  n X|  i d  d S(   s7   Assert the parser prints the expected output on stdout.t   encodingNs0   expected output to be an ordinary string, not %rs   expected: 
'''
s   '''
but got 
'''
s   '''s   expected parser.exit()(   t   syst   stdoutt   getattrR   R    RA   R#   R$   t   getvalueR   R2   t   typet   typest
   StringTypeR5   R&   R   R   R=   (	   R   R>   R?   t   expected_statust   expected_errort   save_stdoutRA   t   outputR:   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   assertOutput   s*    	c         G   s   |  i  | | d t |  d S(   s4   Assert that TypeError is raised when executing func.N(   R<   R   t	   TypeError(   R   R6   R9   R(   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   assertTypeError   s    c         C   s@   | i    } | | j o# |  i d | d | d   n d  S(   Ns   help text failure; expected:
"s	   "; got:
"s   "
(   t   format_helpt   failureException(   R   R#   t   expected_helpt   actual_help(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt
   assertHelp   s    N(	   R   R   R.   R<   R@   R   RM   RO   RT   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR"   9   s   		;		t   TestOptionChecksc           B   s   e  Z d    Z g  h  d  Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   c         C   s   t  d t  |  _ d  S(   Nt   usage(   R   R
   R#   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   setUp   s    c         C   s   |  i  t | | t |  d  S(   N(   R<   R   R   (   R   R9   R(   R7   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   assertOptionError   s    c         C   s   |  i  t d  d  S(   Ns+   at least one option string must be supplied(   RO   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_opt_string_empty   s    	c         C   s   |  i  d d g  d  S(   Ns?   invalid option string 'b': must be at least two characters longt   b(   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_opt_string_too_short   s    c         C   s   |  i  d d g  d  S(   NsO   invalid short option string '--': must be of the form -x, (x any non-dash char)s   --(   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_opt_string_short_invalid   s    c         C   s   |  i  d d g  d  S(   NsJ   invalid long option string '---': must start with --, followed by non-dashs   ---(   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_opt_string_long_invalid   s    c         C   s(   |  i  d d g h d  d 6d  d 6 d  S(   Ns.   option -b: invalid keyword arguments: bar, foos   -bt   foot   bar(   RX   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_attr_invalid   s    c         C   s!   |  i  d d g h d d 6 d  S(   Ns    option -b: invalid action: 'foo's   -bR^   t   action(   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_action_invalid   s    c         C   s>   |  i  d d g h d d 6 |  i  d d g h t d 6 d  S(   Ns%   option -b: invalid option type: 'foo's   -bR^   RF   s'   option -b: invalid option type: 'tuple'(   RX   t   tuple(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_type_invalid   s    c         C   s(   |  i  d d g h d d 6d d 6 d  S(   Ns4   option -b: must not supply a type for action 'count's   -bt   countRa   t   intRF   (   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_type_for_action   s    c         C   s$   |  i  d d d g h d d 6 d  S(   Ns@   option -b/--bad: must supply a list of choices for type 'choice's   -bs   --badt   choiceRF   (   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_choices_list  s    c         C   s>   t  d  i } |  i d | d d g h d d 6d d 6 d  S(	   NR   sB   option -b/--bad: choices must be a list of strings ('%s' supplied)s   -bs   --badRh   RF   s   bad choicest   choices(   RF   R   RX   (   R   t   typename(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_bad_choices_list  s    	c         C   s(   |  i  d d g h d d 6d d 6 d  S(   Ns1   option -b: must not supply choices for type 'int's   -bRf   RF   t   badRj   (   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_choices_for_type  s    c         C   s(   |  i  d d g h d d 6d d 6 d  S(   Ns:   option -b: 'const' must not be supplied for action 'store's   -bt   storeRa   i   t   const(   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_const_for_action  s    c         C   s(   |  i  d d g h d d 6d d 6 d  S(   Ns:   option -b: 'nargs' must not be supplied for action 'count's   -bRe   Ra   i   t   nargs(   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_nargs_for_action  s    c         C   s(   |  i  d d g h d d 6d d 6 d  S(   Ns'   option -b: callback not callable: 'foo's   -bt   callbackRa   R^   (   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_callback_not_callable"  s    c         C   s   d  S(   N(    (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   dummy(  s    c         C   s2   |  i  d d g h d d 6|  i d 6d d 6 d  S(   NsA   option -b: callback_args, if supplied, must be a tuple: not 'foo's   -bRt   Ra   R^   t   callback_args(   RX   Rv   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_callback_args_no_tuple+  s
    
c         C   s2   |  i  d d g h d d 6|  i d 6d d 6 d  S(   NsB   option -b: callback_kwargs, if supplied, must be a dict: not 'foo's   -bRt   Ra   R^   t   callback_kwargs(   RX   Rv   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_callback_kwargs_no_dict3  s
    
c         C   s(   |  i  d d g h d d 6d d 6 d  S(   Ns<   option -b: callback supplied ('foo') for non-callback options   -bRo   Ra   R^   Rt   (   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_callback_for_action;  s    c         C   s(   |  i  d d g h d d 6d d 6 d  S(   Ns9   option -b: callback_args supplied for non-callback options   -bRo   Ra   R^   Rw   (   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt    test_no_callback_args_for_actionA  s    c         C   s(   |  i  d d g h d d 6d d 6 d  S(   Ns;   option -b: callback_kwargs supplied for non-callback options   -bRo   Ra   R^   Ry   (   RX   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt"   test_no_callback_kwargs_for_actionG  s    (   R   R   RW   RX   RY   R[   R\   R]   R`   Rb   Rd   Rg   Ri   Rl   Rn   Rq   Rs   Ru   Rv   Rx   Rz   R{   R|   R}   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRU      s,   																				t   TestOptionParserc           B   sk   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z RS(   c      	   C   sW   t    |  _ |  i i d d d d d d d d |  i i d	 d
 d d d d d d  S(   Ns   -vs	   --verboses   -ns   --noisyRa   t
   store_truet   destt   verboses   -qs   --quiets   --silentt   store_false(   R   R#   t
   add_option(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   N  s
    c         C   s   |  i  |  i i d d   d  S(   Ns   not an Option instance: None(   RO   R#   R   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_add_option_no_OptionU  s    c         C   s    |  i  |  i i d d  d   d  S(   Ns   invalid arguments(   RO   R#   R   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt!   test_add_option_invalid_argumentsY  s    c         C   s   |  i  i d  } |  i t | t   |  i | i d d g  |  i | i d d g  |  i | i d  |  i | i	 d  d  S(   Ns   -vs   -ns	   --verboses   --noisyR   R   (
   R#   t
   get_optionR2   R0   R   R&   t   _short_optst
   _long_optsRa   R   (   R   t   opt1(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_get_option]  s    c         C   s|   |  i  i d  } |  i  i d  } |  i  i d  } |  i  i d  } |  i | | j o | j o
 | j n  d  S(   Ns   -vs	   --verboses   -ns   --noisy(   R#   R   R2   (   R   R   t   opt2t   opt3t   opt4(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_get_option_equalse  s
    c         C   s6   |  i  |  i i d   |  i  |  i i d   d  S(   Ns   -vs	   --verbose(   R2   R#   t
   has_option(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_has_optionl  s    c         C   s  |  i  |  i i d  d  j  |  i  |  i i d  d  j  |  i  |  i i d  d  j  |  i  |  i i d  d  j  |  i |  i i d   |  i |  i i d   |  i |  i i d   |  i |  i i d   |  i  |  i i d   |  i  |  i i d   d  S(   Ns   -vs	   --verboses   -ns   --noisys   -qs   --silent(   R2   R#   R   R   t   failIfR   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   assert_removedp  s    c         C   s   |  i  i d  |  i   d  S(   Ns   -n(   R#   t   remove_optionR   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_remove_short_opt~  s    c         C   s   |  i  i d  |  i   d  S(   Ns	   --verbose(   R#   R   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_remove_long_opt  s    c         C   s#   |  i  |  i i d d  t d  d  S(   NR^   s   no such option 'foo'(   s   foo(   R<   R#   R   R   t
   ValueError(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_remove_nonexistent  s    c         C   sd   d g } t  i |  } t   } | i d d  | | _ | i   ~ |  i | t  i |   d  S(   Ni*   s   -as	   --aaarggh(   RB   t   getrefcountR   R   t	   big_thingt   destroyR&   (   R   R   t   refcountR#   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_refleak  s    			
(   R   R   RW   R   R   R   R   R   R   R   R   R   R   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR~   M  s   										t   TestOptionValuesc           B   s   e  Z d    Z d   Z RS(   c         C   s   d  S(   N(    (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    c         C   s   t    } |  i t |  h   |  i | h   |  i | h d d 6 |  i | d  h d d 6d d 6} t  d |  } |  i t |  |  |  i | |  |  i | h d d 6 |  i | h   |  i | d  |  i | g   d  S(   NR_   R^   R   i*   t   bazt   defaults(   R   R&   R%   t   assertNotEqual(   R   t   valuest   dict(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_basics  s    	(   R   R   RW   R   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR     s   	t   TestTypeAliasesc           B   s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C   s   t    |  _ d  S(   N(   R   R#   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    c         C   s9   |  i  i d d d |  i |  i  i d  i d  d  S(   Ns   -sRF   R/   t   string(   R#   R   t   assertEqualsR   RF   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_str_aliases_string  s    c         C   sn   |  i  i d d t |  i |  i  i d  i d  |  i  i d d t |  i |  i  i d  i d  d  S(   Ns   -sRF   R   s   -xRf   (   R#   R   R/   R   R   RF   Rf   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_new_type_object  s    c         C   st   |  i  i d d t i |  i |  i  i d  i d  |  i  i d d t i |  i |  i  i d  i d  d  S(   Ns   -sRF   R   s   -xRf   (   R#   R   RG   RH   R   R   RF   t   IntType(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_old_type_object  s    (   R   R   RW   R   R   R   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR     s   			t   si<   t   mt   hi   t   dc         C   sl   y: | d i    o t |  St | d   t | d SWn+ t j
 o } t d | | f   n Xd  S(   Nis   option %s: invalid duration: %r(   t   isdigitRf   t   _time_unitsR   R   (   t   optiont   optt   valuet
   IndexError(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   _check_duration  s    t   DurationOptionc           B   s1   e  Z e i d Z e i e i  Z e e d  <RS(   t   duration(   R   (   R   R   R   t   TYPESt   copyt   TYPE_CHECKERR   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR     s   t   TestDefaultValuesc           B   s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c         C   s   t    |  _ |  i i d d d t |  i i d d d d |  i i d d	 d
 d d |  i i d d	 d
 |  i i d d d |  i i d  |  i i d d d  h t d 6d d 6d  d 6d d 6d  d 6d  d 6|  _ d  S(   Ns   -vs	   --verboset   defaults   -qs   --quietR   R   s   -nRF   Rf   i%   s   -ms   -sR^   s   -ts   -ut   nR   R   t   tt   u(   R   R#   R   t   TrueR   t   expected(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    
c         C   s    |  i  |  i i   |  i  d  S(   N(   R&   R#   t   get_default_valuesR   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_basic_defaults  s    c         C   sW   |  i  i d d d d  |  i i h d d 6d d 6 |  i |  i  i   |  i  d  S(   NR   i*   R   i(   R#   t   set_defaultsR   t   updateR&   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_mixed_defaults_post  s    c         C   s   |  i  i d d d d  |  i  i d d d |  i  i d  |  i i h d d 6d d 6 |  i |  i  i   |  i  |  i  i d  |  i  i d d d  |  i i h d  d 6 |  i |  i  i   |  i  d  S(	   Nt   xt   barft   yt   blahs   -xR   t   frobs   -y(	   R#   R   R   R   R   R&   R   R   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_mixed_defaults_pre  s    c         C   s   t  |  i _ |  i i d d d d d |  i i d d d d d |  i i d d	  |  i i h d d
 6d d 6d d 6 |  i |  i i   |  i  |  i i	 t
  |  i i h d d
 6d d 6d	 d 6 |  i |  i i   |  i  d  S(   Ns   -dRF   R   R   i,  s   -et   6mR   t   42R   ih  t   ei*   (   R   R#   t   option_classR   R   R   R   R&   R   t   set_process_default_valuest   False(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_process_default  s    %%(   R   R   RW   R   R   R   R   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR     s
   				t   TestProgNamec           B   s2   e  Z d  Z d   Z d   Z d   Z d   Z RS(   s]   
    Test that %prog expands to the right thing in usage, version,
    and help strings.
    c         C   s   |  i  | i   |  d  S(   N(   R&   t	   get_usage(   R   R#   t   expected_usage(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   assertUsage  s    c         C   s   |  i  | i   |  d  S(   N(   R&   t   get_version(   R   R#   t   expected_version(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   assertVersion  s    c         C   s   t  i } zs t i i d d d  t  i d <t d d d } d } |  i | |  |  i | d	  |  i | | d
 d  Wd  | t  i (Xd  S(   NR^   R_   s   baz.pyi    s	   %prog ...t   versions	   %prog 1.2s   Usage: baz.py ...
s
   baz.py 1.2s   
sl   Options:
  --version   show program's version number and exit
  -h, --help  show this help message and exit
(	   RB   t   argvt   ost   patht   joinR   R   R   RT   (   R   t	   save_argvR#   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_default_progname  s    
	c         C   ss   t  d d d d d d  } | i d  | i d  d	 } |  i | |  |  i | d
  |  i | | d  d  S(   Nt   progt   thingyR   s	   %prog 0.1RV   s   %prog arg args   -hs	   --versions   Usage: thingy arg arg
s
   thingy 0.1s   
(   R   R   R   R   RT   (   R   R#   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_custom_progname(  s    	(   R   R   t   __doc__R   R   R   R   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR   
  s
   			t   TestExpandDefaultsc           B   sb   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z RS(
   c         C   sH   t  d d  |  _ d |  _ d |  _ |  i d |  _ |  i d |  _ d  S(   NR   t   testsX   Usage: test [options]

Options:
  -h, --help            show this help message and exit
s"   read from FILE [default: %default]s:     -f FILE, --file=FILE  read from FILE [default: foo.txt]
s7     -f FILE, --file=FILE  read from FILE [default: none]
(   R   R#   t   help_prefixt	   file_helpt   expected_help_filet   expected_help_none(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   5  s    		
c         C   s<   |  i  i d d d d d |  i |  i |  i  |  i  d  S(   Ns   -fs   --fileR   s   foo.txtt   help(   R#   R   R   RT   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_option_defaultC  s    
c         C   sI   |  i  i d d d |  i |  i  i d d  |  i |  i  |  i  d  S(   Ns   -fs   --fileR   t   files   foo.txt(   R#   R   R   t   set_defaultRT   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_parser_default_1I  s    
c         C   sI   |  i  i d d d |  i |  i  i d d  |  i |  i  |  i  d  S(   Ns   -fs   --fileR   R   s   foo.txt(   R#   R   R   R   RT   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_parser_default_2O  s    
c         C   s6   |  i  i d d d |  i |  i |  i  |  i  d  S(   Ns   -fs   --fileR   (   R#   R   R   RT   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_defaultU  s    
c         C   s<   |  i  i d d d d  d |  i |  i |  i  |  i  d  S(   Ns   -fs   --fileR   R   (   R#   R   R   R   RT   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_default_none_1Z  s    
c         C   sI   |  i  i d d d |  i |  i  i d d   |  i |  i  |  i  d  S(   Ns   -fs   --fileR   R   (   R#   R   R   R   R   RT   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_default_none_2`  s    
c         C   sP   |  i  i d d d d |  i  i d d  |  i d } |  i |  i  |  d  S(   Ns   -ps   --probR   s1   blow up with probability PROB [default: %default]t   probgQ?sF     -p PROB, --prob=PROB  blow up with probability PROB [default: 0.43]
(   R#   R   R   R   RT   (   R   RR   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_float_defaultf  s    		c         C   sH   |  i  i d d d d d d d |  i  i _ |  i |  i  |  i  d  S(   Ns   -fs   --fileR   s   foo.txtR   s#   read from FILE [default: *DEFAULT*]s	   *DEFAULT*(   R#   R   t	   formattert   default_tagRT   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_alt_expando  s
    c         C   sR   |  i  i d d d d d d d  |  i  i _ |  i d } |  i |  i  |  d  S(   Ns   -fs   --fileR   s   foo.txtR   s   read from %default files0     -f FILE, --file=FILE  read from %default file
(   R#   R   R   R   R   R   RT   (   R   RR   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_expandv  s    (   R   R   RW   R   R   R   R   R   R   R   R   R   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR   4  s   										t   TestStandardc           B   s   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   c         C   sX   t  d d d t  d d d d d d t  d	 d
 d g } t d t d |  |  _ d  S(   Ns   -aRF   R   s   -bs   --booRf   R   t   boos   --fooRa   t   appendRV   t   option_list(   R   R   R
   R#   (   R   R+   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s
    c         C   s   |  i  d g d  d  S(   Ns   -as   -a option requires an argument(   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_required_value  s    c         C   s   |  i  d d g d  d  S(   Ns   -bt   5xs&   option -b: invalid integer value: '5x'(   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_invalid_integer  s    c         C   s   |  i  d g d  d  S(   Ns   --boo13s   no such option: --boo13(   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_such_option  s    c         C   s   |  i  d g d  d  S(   Ns   --boo=x5s)   option --boo: invalid integer value: 'x5'(   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_long_invalid_integer  s    c         C   s,   |  i  g  h d  d 6d  d 6d  d 6g   d  S(   Nt   aR   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt
   test_empty  s    c         C   s>   |  i  d d d d g h d d 6d  d 6d d g d 6g   d  S(	   Ns   -aR   s
   --foo=blahs   --foo=R  R   R   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt"   test_shortopt_empty_longopt_append  s    c         C   sD   |  i  d d d d d g h d  d 6d  d 6d d d g d 6g   d  S(	   Ns   --fooR_   R   s   --foo=xR  R   R   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_long_option_append  s
    
c         C   s/   |  i  d g h d d 6d  d 6d  d 6g   d  S(   Ns   -abct   bcR  R   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_option_argument_joined  s    c         C   s2   |  i  d d g h d d 6d  d 6d  d 6g   d  S(   Ns   -at   34R  R   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_option_argument_split  s    c         C   s/   |  i  d g h d  d 6d d 6d  d 6g   d  S(   Ns   -b34R  i"   R   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt#   test_option_argument_joined_integer  s    c         C   s2   |  i  d d g h d  d 6d d 6d  d 6g   d  S(   Ns   -bs   -5R  iR   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt+   test_option_argument_split_negative_integer  s    c         C   s/   |  i  d g h d  d 6d d 6d  d 6g   d  S(   Ns   --boo=13R  i   R   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt    test_long_option_argument_joined  s    c         C   s2   |  i  d d g h d  d 6d d 6d  d 6g   d  S(   Ns   --boot   111R  io   R   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_long_option_argument_split  s    c         C   s5   |  i  d d g h d d 6d  d 6d g d 6g   d  S(   Ns	   --foo=bars   -axyzt   xyzR  R   R_   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_long_option_short_option  s    c         C   s5   |  i  d d g h d d 6d  d 6d g d 6g   d  S(   Ns   --f=bars   -axyzR  R  R   R_   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_abbrev_long_option  s    c         C   sG   |  i  i g   \ } } |  i  i   } |  i t |  t |   d  S(   N(   R#   R$   R   R&   R%   (   R   R+   R(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_defaults  s    c         C   s9   |  i  i d d d d d d d |  i d g d	  d  S(
   Ns   --fozRa   Ro   RF   R   R   R^   s   --f=bars%   ambiguous option: --f (--foo, --foz?)(   R#   R   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_ambiguous_option  s    c         C   s>   |  i  d d d d g h d d 6d  d 6d g d 6g   f d  S(   Ns   -aR  s   --fooR_   R  R   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt    test_short_and_long_option_split  s    c         C   sA   |  i  d d d d d g h d  d 6d d 6d	 d g d
 6g   d  S(   Ns	   --foo=bars   -bt   123s   --fooR   R  i{   R   R_   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt*   test_short_option_split_long_option_append  s    c         C   s;   |  i  d d d g h d d 6d  d 6d  d 6d g  f d  S(   Ns   -aR^   R_   R  R   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt*   test_short_option_split_one_positional_arg  s    c         C   s{   |  i  d d d d g h d d 6d  d 6d  d 6d d g  f |  i  d d d d g h d d 6d  d 6d g d 6g   f d  S(   Ns   -as   --R^   R_   R  R   s   --foo(   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt$   test_short_option_consumes_separator  s    c         C   sA   |  i  d d d d g h d d 6d  d 6d  d 6d d g  f d  S(	   Ns   -abs   --s   --fooR_   RZ   R  R   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt&   test_short_option_joined_and_separator  s    c         C   s>   |  i  d d d d g h d d 6d  d 6d g d 6d g  d  S(	   Ns   -abt   -s   --fooR_   RZ   R  R   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt"   test_hyphen_becomes_positional_arg  s    c         C   sD   |  i  d d d d d d g h d  d 6d d	 6d
 d g d 6g   d  S(   Ns   -b3s   -bt   5s	   --foo=bars   --fooR   R  i   R   R_   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_append_versus_append  s    c         C   s2   |  i  d d g h d d 6d  d 6d  d 6g   d  S(   Ns   -as   -b3R  R   R^   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt&   test_option_consumes_optionlike_string  s    (   R   R   RW   R   R  R  R  R  R  R  R	  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR     s4   																									t   TestBoolc           B   s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c      	   C   sR   t  d d d d d d d d t  d	 d
 d d d d g } t d |  |  _ d  S(   Ns   -vs	   --verboseRa   R   R   R   R   R   s   -qs   --quietR   R   (   R   R   R#   (   R   R+   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    c         C   s   |  i  g  h d d 6g   d  S(   NR   R   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_bool_default  s    	
c         C   sS   |  i  d g h d d 6g   \ } } t t d  o |  i | i t j  n d  S(   Ns   -qi    R   R   (   R.   t   hasattrt   __builtins__t
   failUnlessR   R   (   R   R+   R(   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_bool_false  s
    
c         C   sS   |  i  d g h d d 6g   \ } } t t d  o |  i | i t j  n d  S(   Ns   -vi   R   R   (   R.   R#  R$  R%  R   R   (   R   R+   R(   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_bool_true   s
    
c         C   s'   |  i  d d d g h d d 6g   d  S(   Ns   -qvqs   -qs   -vi   R   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_bool_flicker_on_and_off'  s    
(   R   R   RW   R"  R&  R'  R(  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR!    s
   				t
   TestChoicec           B   s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C   sG   t  d t  |  _ |  i i d d d d d d d d d	 d
 d g d  S(   NRV   s   -cRa   Ro   RF   Rh   R   Rj   t   onet   twot   three(   R   R
   R#   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   -  s    c         C   s*   |  i  d d d g h d d 6d g  d  S(   Ns   -cR*  R  Rh   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_valid_choice2  s    
c         C   s   |  i  d d d g d  d  S(   Ns   -ct   fourt   abcsE   option -c: invalid choice: 'four' (choose from 'one', 'two', 'three')(   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_invalid_choice7  s    c         C   s^   |  i  i d d d d d d g |  i  i d  } |  i | i d  |  i | i d  d  S(	   Ns   -ds	   --defaultRj   R.  t   fivet   sixRh   Ro   (   R#   R   R   R&   RF   Ra   (   R   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_add_choice_option<  s
    (   R   R   RW   R-  R0  R3  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR)  ,  s   			t	   TestCountc           B   s   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z d   Z d   Z d   Z RS(   c      	   C   s   t  d t  |  _ t d d d d d |  _ |  i i |  i  |  i i d d d	 d d |  i i d
 d d d d d d d d  S(   NRV   s   -vRa   Re   R   R   s	   --verboseRF   Rf   s   -qs   --quiett   store_constRp   i    (   R   R
   R#   R   t   v_optR   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   D  s    c         C   s   |  i  g  h d  d 6g   d  S(   NR   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR  L  s    c         C   s!   |  i  d g h d d 6g   d  S(   Ns   -vi   R   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_oneO  s    c         C   s!   |  i  d g h d d 6g   d  S(   Ns   -vvvi   R   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_threeR  s    c         C   s'   |  i  d d d g h d d 6g   d  S(   Ns   -vi   R   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_three_apartU  s    c         C   s$   |  i  d d g h d d 6g   d  S(   Ns   -vvvs   --verbose=2i   R   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_override_amountX  s    c         C   s'   |  i  d d d g h d d 6g   d  S(   Ns   -vvvs   --verbose=2s   -qi    R   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_override_quiet[  s    c         C   s*   |  i  d d d d g h d d 6g   d  S(   Ns   -vvvs   --verbose=2s   -qs   -vi   R   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_overriding^  s    c         C   s*   |  i  d d d g h d d 6d g  d  S(   Ns   --quiett   3s   -vi   R   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_interspersed_argsb  s    
c         C   s:   |  i  i   |  i d d d g h d d 6d d g  d  S(   Ns   --quietR=  s   -vi    R   (   R#   t   disable_interspersed_argsR.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_no_interspersed_argsg  s    
c         C   s   |  i  d d g d  d  S(   Ns   -q3s   -vs   no such option: -3(   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_no_such_optionm  s    c         C   s   |  i  d d g d  d  S(   Ns	   --quiet=3s   -vs$   --quiet option does not take a value(   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_option_no_valuep  s    c         C   s1   |  i  i d d  |  i g  h d d 6g   d  S(   NR   i    (   R#   R   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_with_defaultt  s    c         C   s=   |  i  i d d  |  i d d d d g h d d 6g   d  S(   NR   i    s   -vvvs   --verbose=2s   -qs   -vi   (   R#   R   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_count_overriding_defaultx  s    (   R   R   RW   R  R7  R8  R9  R:  R;  R<  R>  R@  RA  RB  RC  RD  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR4  C  s   													t   TestMultipleArgsc           B   s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c         C   sA   t  d t  |  _ |  i i d d d d d d d d	 d
 d d  S(   NRV   s   -ps   --pointRa   Ro   Rr   i   RF   t   floatR   t   point(   R   R
   R#   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   ~  s    c         C   s6   |  i  d d d d d d g h d d
 6d d g  d  S(   NR^   s   -pt   1s   2.5s   -4.3R  g      ?g      @g333333RG  (   g      ?g      @g333333(   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_nargs_with_positional_args  s    
c         C   s0   |  i  d d d d d g h d
 d	 6d g  d  S(   Ns   --points   -1s   2.5s   -0R  g      g      @g       RG  (   g      g      @g       (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_nargs_long_opt  s    
c         C   s    |  i  d d d d g d  d  S(   Ns   -ps   1.0t   2xs   3.5s-   option -p: invalid floating-point value: '2x'(   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_nargs_invalid_float_value  s    c         C   s   |  i  d d d g d  d  S(   Ns   --points   1.0s   3.5s#   --point option requires 3 arguments(   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_nargs_required_values  s    (   R   R   RW   RI  RJ  RL  RM  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRE  }  s
   				t   TestMultipleArgsAppendc           B   s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c         C   s   t  d t  |  _ |  i i d d d d d d d d	 d
 d |  i i d d d d d d d d d
 d |  i i d d d d d
 d d d d  S(   NRV   s   -ps   --pointRa   Ro   Rr   i   RF   RF  R   RG  s   -fs   --fooR   i   Rf   R^   s   -zs   --zerot   append_constRp   i    (   i    i    (   R   R
   R#   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    c         C   sC   |  i  d d d d d d d g h d  d 6d d g d 6d g  d  S(   Ns   -ft   4s   -3R   s   --fooRH  t   666RG  i   ii   i  R^   (   i   i(   i   i  (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_nargs_append  s    c         C   s   |  i  d g d  d  S(   Ns   -f4,3s   -f option requires 2 arguments(   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt!   test_nargs_append_required_values  s    c         C   s.   |  i  d d g h d  d 6d g d 6g   d  S(   Ns   --foo=3RP  RG  i   i   R^   (   i   i   (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_nargs_append_simple  s    c         C   s=   |  i  d d d d d g h d  d 6d d d g d
 6g   d  S(   Ns   --zeros   --fooR=  RP  s   -zRG  i    i   i   R^   (   i    i    (   i   i   (   i    i    (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_nargs_append_const  s    (   R   R   RW   RR  RS  RT  RU  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRN    s
   					t   TestVersionc           B   s   e  Z d    Z d   Z RS(   c         C   sm   t  d t d d  |  _ t i } z9 t i i t i d d  t i d <|  i	 d g d  Wd  | t i (Xd  S(	   NRV   R   s	   %prog 0.1R^   R_   i    s	   --versions   bar 0.1
(
   R   R
   R#   RB   R   R   R   R   t   curdirRM   (   R   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_version  s    
"c         C   s)   t  d t  |  _ |  i d g d  d  S(   NRV   s	   --versions   no such option: --version(   R   R
   R#   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_version  s    (   R   R   RX  RY  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRV    s   	
t   TestConflictingDefaultsc           B   s)   e  Z d  Z d   Z d   Z d   Z RS(   s4   Conflicting default values: the last one should win.c      
   C   s1   t  d t d d d d d d d g  |  _ d  S(	   NR   s   -vRa   R   R   R   R   i   (   R   R   R#   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    c         C   s@   |  i  i d d d d d d d |  i g  h d d 6g   d  S(   Ns   -qRa   R   R   R   R   i    (   R#   R   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_default  s    c         C   s@   |  i  i d d d d d d d  |  i g  h d  d 6g   d  S(   Ns   -qRa   R   R   R   R   (   R#   R   R   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_default_none  s    (   R   R   R   RW   R[  R\  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRZ    s   		t   TestOptionGroupc           B   s>   e  Z d    Z d   Z d   Z d   Z d   Z d   Z RS(   c         C   s   t  d t  |  _ d  S(   NRV   (   R   R
   R#   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    c         C   s\   t  |  i d  } |  i i |  | i d d d d d |  i d g h d d 6g   d  S(	   Nt   Spams   --spamRa   R   R   s   spam spam spam spami   t   spam(   R   R#   t   add_option_groupR   R.   (   R   t   group(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt!   test_option_group_create_instance  s
    c         C   s   |  i  |  i i d d   d  S(   Ns!   not an OptionGroup instance: None(   RO   R#   R`  R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_add_group_no_group  s    c         C   s    |  i  |  i i d d  d   d  S(   Ns   invalid arguments(   RO   R#   R`  R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt    test_add_group_invalid_arguments  s    c         C   sD   t  |  i d  } t   | _ |  i |  i i | f d  t d  d  S(   NR^  s"   invalid OptionGroup (wrong parser)(   R   R#   R   R<   R`  R   R   (   R   Ra  (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_add_group_wrong_parser  s    c         C   sX   |  i  i d d d } | i d  | i d d d |  i |  i  i d  |  d  S(   Ns   Group 2t   descriptions   Some more optionst   Bacons   --baconRF   Rf   (   R#   R`  t	   set_titleR   R2   t   get_option_group(   R   Ra  (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_group_manipulate  s
    	(   R   R   RW   Rb  Rc  Rd  Re  Rj  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR]    s   					t   TestExtendAddTypesc           B   sK   e  Z d    Z d   Z d e f d     YZ d   Z d   Z d   Z RS(   c         C   s]   t  d t d |  i  |  _ |  i i d d  d d d d |  i i d d	 d d
 d d
 d  S(   NRV   R   s   -aRF   R   R   R  s   -fs   --fileR   (   R   R
   t   MyOptionR#   R   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    c         C   sX   t  i i t i  o t  i t i  n+ t  i i t i  o t  i t i  n d  S(   N(   R   R   t   isdirR   t   TESTFNt   rmdirt   isfilet   unlink(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   tearDown  s    Rl  c           B   s:   e  Z d    Z e i d Z e i e i  Z e e d <RS(   c         C   sR   t  i i |  p t d |   n( t  i i |  p t d |   n | S(   Ns   %s: file does not exists   %s: not a regular file(   R   R   t   existsR   Rp  (   R   R   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt
   check_file  s
    R   (   s   file(   R   R   Rt  R   R   R   R   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRl    s   	c         C   sJ   t  t i d  i   |  i d t i d g h t i d 6d d 6g   d  S(   Nt   ws   --files   -afooR   R^   R  (   t   openR   Rn  t   closeR.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_filetype_ok  s    c         C   s'   |  i  d t i d g d t i  d  S(   Ns   --files   -afoos   %s: file does not exist(   R@   R   Rn  (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_filetype_noexist  s    c         C   s7   t  i t i  |  i d t i d g d t i  d  S(   Ns   --files   -afoos   %s: not a regular file(   R   t   mkdirR   Rn  R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_filetype_notfile  s    (	   R   R   RW   Rr  R   Rl  Rx  Ry  R{  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRk    s   				t   TestExtendAddActionsc           B   s9   e  Z d    Z d e f d     YZ d   Z d   Z RS(   c      	   C   s=   |  i  d d d d d d d d g } t d	 |  |  _ d  S(
   Ns   -as   --appleRa   t   extendRF   R   R   t   appleR   (   Rl  R   R#   (   R   R+   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   #  s    Rl  c           B   s8   e  Z e i d Z e i d Z e i d Z d   Z RS(   R}  c         C   s\   | d j o, | i  d  } | i | g   i |  n  t i |  | | | | | |  d  S(   NR}  t   ,(   t   splitt   ensure_valueR}  R   t   take_action(   R   Ra   R   R   R   R   R#   t   lvalue(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR  -  s
    (   s   extend(   s   extend(   s   extend(   R   R   R   t   ACTIONSt   STORE_ACTIONSt   TYPED_ACTIONSR  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRl  (  s   c         C   s-   |  i  d d g h d d d g d 6g   d  S(   Ns	   -afoo,bars   --apple=blahR^   R_   R   R~  (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_extend_add_action5  s    c         C   s6   |  i  d d d d g h d d d d g d 6g   d  S(	   Ns   -aR^   s   -abars   --apple=x,yR_   R   R   R~  (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_extend_add_action_normal:  s    (   R   R   RW   R   Rl  R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR|  "  s   		t   TestCallbackc           B   s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C   s^   t  d d  d d d |  i t  d d d d d |  i d d d d	 g } t d
 |  |  _ d  S(   Ns   -xRa   Rt   s   -fs   --fileRF   R   R   t   filenameR   (   R   R   t   process_optR   R#   (   R   R+   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   B  s    		c         C   sD  | d j o |  i  | i d g  |  i  | i g   |  i | |  i j  |  i | d  j  |  i  t | i  h d  d 6 d | i _ n | d j o |  i  | i d g  |  i  | i d g  |  i | |  i j  |  i  | d  |  i  t | i  h d  d 6d d 6 t	 | i | i
 |  n |  i d |  d  S(	   Ns   -xR  i*   s   --files   -fR^   R   s!   Unknown option %r in process_opt.(   R&   R   R   R2   R#   R   R%   R   R   t   setattrR   R5   (   R   R   R   R   t   parser_(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR  O  s     'c         C   s+   |  i  d d g h d d 6d d 6g   d  S(   Ns   -xs
   --file=fooR^   R  i*   R   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_callbackc  s    c         C   sa   t  d t  } | i d  | i d d d d d d   d d	 d
 d d } |  i | |  d  S(   NRV   s   -hs   -ts   --testRa   Rt   c           S   s   d  S(   N(   R   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   <lambda>o  s    RF   R   R   R^   s%   Options:
  -t TEST, --test=TEST  foo
(   R   R
   R   R   RT   (   R   R#   RR   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_callback_helph  s    (   R   R   RW   R  R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR  A  s   			t   TestCallbackExtraArgsc           B   s#   e  Z d    Z d   Z d   Z RS(   c         C   sU   t  d d d d d |  i d d t f d d d	 d
 d g  g } t d |  |  _ d  S(   Ns   -ps   --pointRa   Rt   Rw   i   RF   R   R   t   pointsR   R   (   R   t   process_tupleRf   R   R#   (   R   R+   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   x  s
    	c         C   s   |  i  | d  |  i | t j  | d j o |  i  | d  n" | d j o |  i  | d  n t t | | i d    } t | i | i  i	 |  d  S(   Ni   s   -ps   1,2,3s   --points   4,5,6R  (
   R&   R2   Rf   Rc   t   mapR  RD   R   R   R   (   R   R   R   R   R  t   lenRF   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s    c         C   s-   |  i  d d d g h d d g d
 6g   d  S(   Ns   -p1,2,3s   --points   4,5,6i   i   i   i   i   i   R  (   i   i   i   (   i   i   i   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_callback_extra_args  s    (   R   R   RW   R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR  w  s   		t   TestCallbackMeddleArgsc           B   s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C   sd   g  } t  d d d  D]. } | t t |  d d d |  i d d q ~ } t d |  |  _ d  S(   NiiRa   Rt   R   t   thingsR   (   t   rangeR   R/   t	   process_nR   R#   (   R   t   _[1]R   R+   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    Gc         C   s   t  | d  } | i } t |  | j  o |  i d | | f  n | i i | i g   } | i t | d | !  | i	 i |  | d | 5d  S(   Ni   s$   Expected %d arguments for %s option.i    (
   Rf   t   rargsR  R5   R   R  R   R   Rc   t   largs(   R   R   R   R   R  Rr   R  R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s    	c         C   s<   |  i  d d d d d d g h d
 d g d 6d d	 g  d  S(   Ns   -1R^   s   -3R_   R   t   quxR  i   i   (   s   foo(   s   bars   bazR  (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_callback_meddle_args  s    c         C   s-   |  i  d d d g h d g d 6d g  d  S(   Ns   -2R^   s   --R  i   (   s   foos   --(   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt#   test_callback_meddle_args_separator  s    (   R   R   RW   R  R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s   			t   TestCallbackManyArgsc           B   s#   e  Z d    Z d   Z d   Z RS(   c         C   sj   t  d d d d d d d |  i d d t  d	 d
 d d d d d |  i d d g } t d |  |  _ d  S(   Ns   -as   --appleRa   Rt   Rr   i   RF   R   s   -bs   --bobi   Rf   R   (   R   t   process_manyR   R#   (   R   R+   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s
    c         C   s   | d j o |  i  | d  nd | d j o |  i  | d  nC | d j o |  i  | d  n" | d j o |  i  | d  n d  S(   Ns   -aR^   R_   s   --applet   dingt   dongs   -bi   i   i   s   --bobifi*   i    (   s   foos   bar(   R  R  (   i   i   i   (   ifi*   i    (   R&   (   R   R   R   R   R  (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s    c         C   sO   |  i  d d d d d d d d d	 d
 d d d d g h d  d 6d  d 6g   d  S(   Ns   -aR^   R_   s   --appleR  R  s   -bRH  t   2R=  s   --bobs   -666R   t   0R~  t   bob(   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_many_args  s
    (   R   R   RW   R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s   		
t   TestCallbackCheckAbbrevc           B   s#   e  Z d    Z d   Z d   Z RS(   c         C   s/   t    |  _ |  i i d d d d |  i d  S(   Ns	   --foo-barRa   Rt   (   R   R#   R   t   check_abbrev(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    c         C   s   |  i  | d  d  S(   Ns	   --foo-bar(   R&   (   R   R   R   R   R#   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s    c         C   s   |  i  d g h  g   d  S(   Ns   --foo(   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_abbrev_callback_expansion  s    (   R   R   RW   R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s   		t   TestCallbackVarArgsc           B   sG   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   c         C   ss   t  d d d d d d d t  d d	 d
 d d t  d d d	 d d |  i d d g } t d t d |  |  _ d  S(   Ns   -aRF   Rf   Rr   i   R   R  s   -bRa   R   RZ   s   -cs
   --callbackRt   t   cRV   R   (   R   t   variable_argsR   R
   R#   (   R   R+   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    c         C   s   |  i  | d  j  d } g  } | i } x | o | d } | d  d j o t |  d j p5 | d  d j o) t |  d j o | d d j o Pq+ | i |  | d =q+ Wt | i | i |  d  S(   Ni    i   s   --i   R  (   R2   R   R  R  R   R  R   R   (   R   R   R   R   R#   t   doneR  t   arg(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s    	 
$5c         C   sA   |  i  d d d d d g h d d 6d  d	 6d d g d
 6g   d  S(   Ns   -a3s   -5s
   --callbackR^   R_   i   iR  RZ   R  (   i   i(   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_variable_args  s    c         C   sJ   |  i  d d d d d d g h d  d 6t d 6d d d g d	 6d g  d  S(
   Ns   -ct   37s   --t   xxxs   -bt   helloR  RZ   R  (   R.   R   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt%   test_consume_separator_stop_at_option  s
    
c         C   sG   |  i  d d d d d g h d  d 6d  d 6d d d g d 6d g  d  S(	   NR  s   -cR^   R  R_   R  RZ   R  (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt%   test_positional_arg_and_variable_args  s
    
c         C   s8   |  i  d d d g h d  d 6t d 6d g d 6g   d  S(   Ns   -cR^   s   -bR  RZ   R  (   R.   R   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_stop_at_option  s    c         C   s    |  i  d d d d g d  d  S(   Ns   -cR=  s   -5s   -as   no such option: -5(   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_stop_at_invalid_option  s    (	   R   R   RW   R  R  R  R  R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s   						t   ConflictBasec           B   s   e  Z d    Z d   Z RS(   c      	   C   s@   t  d d d d d d d d g } t d	 t d
 |  |  _ d  S(   Ns   -vs	   --verboseRa   Re   R   R   R   s   increment verbosityRV   R   (   R   R   R
   R#   (   R   R+   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   	  s    c         C   s   d | i  _ d  S(   Ni   (   R   t   show_version(   R   R   R   R   R#   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s    (   R   R   RW   R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s   	t   TestConflictc           B   s2   e  Z d  Z d   Z d   Z d   Z d   Z RS(   s9   Use the default conflict resolution for Optik 1.2: error.c         C   s]   |  i  | d
 h d d 6|  i d 6d d 6t d  } |  i | i d  |  i | i d	  d  S(   Ns   -vs	   --versionRt   Ra   s   show versionR   s5   option -v/--version: conflicting option string(s): -vs    conflicting option string(s): -vs   -v/--version(   s   -vs	   --version(   R<   R  R   R&   R   t	   option_id(   R   R6   R:   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   assert_conflict_error  s    
	c         C   s   |  i  |  i i  d  S(   N(   R  R#   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_error  s    c         C   s&   t  |  i d  } |  i | i  d  S(   Ns   Group 1(   R   R#   R  R   (   R   Ra  (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_error_group"  s    c         C   s#   |  i  |  i i d d  t d  d  S(   NR^   s'   invalid conflict_resolution value 'foo'(   s   foo(   R<   R#   t   set_conflict_handlerR   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_no_such_conflict_handler&  s    (   R   R   R   R  R  R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s
   			t   TestConflictResolvec           B   s>   e  Z d    Z d   Z d   Z d   Z d   Z d   Z RS(   c      	   C   sI   t  i |   |  i i d  |  i i d d d d d |  i d d d  S(   Nt   resolves   -vs	   --versionRa   Rt   R   s   show version(   R  RW   R#   R  R   R  (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   -  s    c         C   s   |  i  i d  } |  i  i d  } |  i  i d  } |  i | | j  |  i | | j	  |  i | i d g  |  i | i d g  |  i | i d g  |  i | i g   |  i | i d g  d  S(   Ns   -vs	   --verboses	   --version(   R#   R   R2   R&   R   R   (   R   R6  t   verbose_optt   version_opt(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_resolve3  s    c         C   s   |  i  d g d  d  S(   Ns   -hs}   Options:
  --verbose      increment verbosity
  -h, --help     show this help message and exit
  -v, --version  show version
(   RM   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_resolve_help@  s    c         C   s(   |  i  d g h d  d 6d d 6g   d  S(   Ns   -vR   i   R  (   R.   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_resolve_short_optH  s    c         C   s!   |  i  d g h d d 6g   d  S(   Ns	   --verbosei   R   (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_resolve_long_optM  s    
c         C   s+   |  i  d d g h d d 6d d 6g   d  S(   Ns	   --verboses	   --versioni   R   R  (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_resolve_long_optsR  s    (   R   R   RW   R  R  R  R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR  ,  s   					t   TestConflictOverridec           B   s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C   sv   t  d t  |  _ |  i i d  |  i i d d d d d d d	 d
 |  i i d d d d d d d d d	 d d  S(   NRV   R  s   -ns	   --dry-runRa   R   R   t   dry_runR   s   don't do anythingR5  Rp   i*   s   dry run mode(   R   R
   R#   R  R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   X  s    c         C   sB   |  i  i d  } |  i | i d g  |  i | i d g  d  S(   Ns	   --dry-runs   -n(   R#   R   R&   R   R   (   R   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_override_optsb  s    c         C   s   |  i  d g d  d  S(   Ns   -hsX   Options:
  -h, --help     show this help message and exit
  -n, --dry-run  dry run mode
(   RM   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_override_helpg  s    c         C   s!   |  i  d g h d d 6g   d  S(   Ns   -ni*   R  (   R.   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_conflict_override_argsn  s    
(   R   R   RW   R  R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR  W  s   	
		sS  Usage: bar.py [options]

Options:
  -a APPLE           throw APPLEs at basket
  -b NUM, --boo=NUM  shout "boo!" NUM times (in order to frighten away all the
                     evil spirits that cause trouble and mayhem)
  --foo=FOO          store FOO in the foo list for later fooing
  -h, --help         show this help message and exit
sS  Usage: bar.py [options]

Options:
  -a APPLE           throw APPLEs at basket
  --boo=NUM, -b NUM  shout "boo!" NUM times (in order to frighten away all the
                     evil spirits that cause trouble and mayhem)
  --foo=FOO          store FOO in the foo list for later fooing
  --help, -h         show this help message and exit
sW  Usage
=====
  bar.py [options]

Options
=======
-a APPLE           throw APPLEs at basket
--boo=NUM, -b NUM  shout "boo!" NUM times (in order to frighten away all the
                   evil spirits that cause trouble and mayhem)
--foo=FOO          store FOO in the foo list for later fooing
--help, -h         show this help message and exit
s}  Usage: bar.py [options]

Options:
  -a APPLE           throw APPLEs at basket
  -b NUM, --boo=NUM  shout "boo!" NUM times (in order to
                     frighten away all the evil spirits
                     that cause trouble and mayhem)
  --foo=FOO          store FOO in the foo list for later
                     fooing
  -h, --help         show this help message and exit
t   TestHelpc           B   sk   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z RS(   c         C   s   |  i  d  |  _ d  S(   NiP   (   t   make_parserR#   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW     s    c         C   s   t  d d d d d d d d d	 t  d
 d d d d d d d d d t  d d d d d d d d d g } t i i d  } t |  t i d <z t d |  SWd  | d  j o t i d =n | t i d <Xd  S(   Ns   -aRF   R   R   R  t   metavart   APPLER   s   throw APPLEs at baskets   -bs   --booRf   R   t   NUMse   shout "boo!" NUM times (in order to frighten away all the evil spirits that cause trouble and mayhem)s   --fooRa   R   R^   s*   store FOO in the foo list for later fooingt   COLUMNSR   (   R   R   t   environt   getR/   R   R   (   R   t   columnsR+   t   orig_columns(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s    c         C   s   t  |  t i j o+ |  i i t i  } | i | d  } n t i } z3 t	 i
 i d d  t i d <|  i d g |  Wd  | t i (Xd  S(   Nt   replaceR^   s   bar.pyi    s   -h(   RF   RG   t   UnicodeTypeR#   t   _get_encodingRB   RC   t   encodeR   R   R   R   RM   (   R   R?   RA   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   assertHelpEquals  s    
c         C   s   |  i  t  d  S(   N(   R  t   _expected_help_basic(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt	   test_help  s    c         C   s!   |  i  i d  |  i t  d  S(   Ns   Usage: %prog [options](   R#   t	   set_usageR  R  (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_help_old_usage  s    c         C   s    d |  i  i _ |  i t  d  S(   Ni    (   R#   R   t   short_firstR  t   _expected_help_long_opts_first(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_help_long_opts_first  s    c         C   so   t  i i d  } z- d t  i d <t   |  i _ |  i t  Wd  | d  j	 o | t  i d <n t  i d =Xd  S(   NR  t   80(	   R   R  R  R   R#   R   R  t   _expected_help_title_formatterR   (   R   t   save(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_help_title_formatter  s    c         C   s#   |  i  d  |  _ |  i t  d  S(   Ni<   (   R  R#   R  t   _expected_help_short_lines(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_wrap_columns  s    c         C   sE   t  d t  |  _ |  i i d d d d d d } |  i |  d  S(   NRV   s   -aRa   R   R   u   olé!uK   Options:
  -h, --help  show this help message and exit
  -a          olé!
(   R   R
   R#   R   R  (   R   t   expect(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_help_unicode  s    c         C   s/   t  d t d d  |  _ d } |  i |  d  S(   NRV   Rf  u   olé!u>   olé!

Options:
  -h, --help  show this help message and exit
(   R   R
   R#   R  (   R   R  (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_help_unicode_description  s    c         C   s   |  i  i d  t |  i  d d  } | i d d d d d |  i  i |  d	 } |  i |  d
 |  i  _ |  i | d  d  S(   Ns`   This is the program description for %prog.  %prog has an option group as well as single options.s   Dangerous OptionssZ   Caution: use of these options is at your own risk.  It is believed that some of them bite.s   -gRa   R   R   s   Group option.sT  Usage: bar.py [options]

This is the program description for bar.py.  bar.py has an option group as
well as single options.

Options:
  -a APPLE           throw APPLEs at basket
  -b NUM, --boo=NUM  shout "boo!" NUM times (in order to frighten away all the
                     evil spirits that cause trouble and mayhem)
  --foo=FOO          store FOO in the foo list for later fooing
  -h, --help         show this help message and exit

  Dangerous Options:
    Caution: use of these options is at your own risk.  It is believed
    that some of them bite.

    -g               Group option.
s    Please report bugs to /dev/null.s"   
Please report bugs to /dev/null.
(   R#   t   set_descriptionR   R   R`  R  t   epilog(   R   Ra  R  (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_help_description_groups  s    			(   R   R   RW   R  R  R  R  R  R  R  R  R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR    s   									
	t   TestMatchAbbrevc           B   s   e  Z d    Z d   Z RS(   c         C   s9   |  i  t d h d  d 6d  d 6d  d 6d  d 6 d  d  S(   Ns   --fs   --fozs   --foos   --fie(   R&   R   R   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_match_abbrev,  s    

c         C   sD   d } h d  d 6d  d 6d  d 6} |  i t | | f d  t d  d  S(   Ns   --fs   --fozs   --foos   --fies,   ambiguous option: --f (--fie, --foo, --foz?)(   R   R<   R   R   (   R   R   t   wordmap(    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_match_abbrev_error4  s
    (   R   R   R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR  +  s   	t   TestParseNumberc           B   s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C   s<   t    |  _ |  i i d d t |  i i d d t d  S(   Ns   -nRF   s   -l(   R   R#   R   Rf   t   long(   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyRW   =  s    c         C   sT   |  i  t d t f h  t t i d   |  i  t d t f h  t t i d   d  S(   NR   s!   invalid literal for int().*: '?'?t   0xOoopss)   invalid literal for long().*: '?0xOoops'?(   R<   R   Rf   R   t   ret   compileR  (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_parse_num_failB  s    c         C   s   |  i  t d t  d  |  i  t d t  d  |  i  t d t  d  |  i  t d t  d  |  i  t d	 t  d
  |  i  t d t  d  d  S(   NR  i    t   0x10i   t   0XAl   
 t   010l    t   0b11i   t   0bl    (   R&   R   Rf   R  (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_parse_num_okL  s    c         C   s   |  i  d d d d g h d d 6d d 6g   |  i  d d	 d
 g h d d 6d d 6g   |  i d g d  |  i d g d  |  i d d g d  d  S(   Ns   -nR   s   -lt   0x20i*   R   i    t   lt   0b0101s   -l010i   i   s   -n008s'   option -n: invalid integer value: '008's   -l0b0123s/   option -l: invalid long integer value: '0b0123't   0x12xs.   option -l: invalid long integer value: '0x12x'(   R.   R@   (   R   (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   test_numeric_optionsT  s    (   R   R   RW   R  R  R  (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyR  <  s   		
	c           C   s   t  i t  d  S(   N(   R   t   run_unittestR   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt	   test_maina  s    t   __main__(   i   i    i  i  iQ (M   RB   R   R  R   RG   t   unittestR    R   R   t   optparseR   R   R   R   R   R   R   R	   R
   R   R   R   R   R   R   R   R   R   t	   NameErrorRF   R  R1   t	   ExceptionR   R   t   TestCaseR"   RU   R~   R   R   R   R   R   R   R   R   R   R!  R)  R4  RE  RN  RV  RZ  R]  Rk  R|  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R   (    (    (    s/   /mit/python/lib/python2.6/test/test_optparse.pyt   <module>   sv   ^|N"	
3*N%:"+66
+'%	