ó
¬«Y]c           @   s  d  d l  Z  d  d l Z d  d l Z d  d l Z d  d l m Z e j d ƒ Z d  d l m Z d  d l	 Z	 d Z
 d Z d  d l m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z e j j Z e d ƒ Z  e d	 ƒ Z! y d  d
 l m" Z" m# Z# Wn e$ k
 r8e% Z& n Xe' Z& dM Z( dO Z) dQ Z* d dR d „  ƒ  YZ+ d dS d „  ƒ  YZ, d dT d „  ƒ  YZ- d e f d „  ƒ  YZ. d e f d „  ƒ  YZ/ d dU d „  ƒ  YZ0 d dV d „  ƒ  YZ1 d e f d „  ƒ  YZ2 d dW d  „  ƒ  YZ3 d! e4 f d" „  ƒ  YZ5 d# e4 f d$ „  ƒ  YZ6 d% dX d& „  ƒ  YZ7 d' dY d( „  ƒ  YZ8 d) e4 f d* „  ƒ  YZ9 d+ e: f d, „  ƒ  YZ; d- e< f d. „  ƒ  YZ= d/ e  j> f d0 „  ƒ  YZ? d1 e  j> f d2 „  ƒ  YZ@ e  jA e& d3 ƒ d4 e  j> f d5 „  ƒ  Yƒ ZB d6 e  j> f d7 „  ƒ  YZC d8 e  j> f d9 „  ƒ  YZD d: e  j> f d; „  ƒ  YZE d< e  j> f d= „  ƒ  YZF d> e  j> f d? „  ƒ  YZG e jH d@ e  j> f dA „  ƒ  Yƒ ZI dB e  j> f dC „  ƒ  YZJ dD e  j> f dE „  ƒ  YZK dF e  j> f dG „  ƒ  YZL dH e  j> f dI „  ƒ  YZM dJ „  ZN eO dK k reN ƒ  n  d S(Z   iÿÿÿÿN(   t   test_supportt	   _testcapi(   t   getargs_keywordsiÿÿÿl   B$$HH! `? (   t	   UCHAR_MAXt	   USHRT_MAXt   UINT_MAXt	   ULONG_MAXt   INT_MAXt   INT_MINt   LONG_MINt   LONG_MAXt   PY_SSIZE_T_MINt   PY_SSIZE_T_MAXt   SHRT_MINt   SHRT_MAXt   FLT_MINt   FLT_MAXt   DBL_MINt   DBL_MAXt   inft   nan(   t	   getargs_Lt	   getargs_Ki   i?   i   i@   t   Longc           B   s   e  Z d  „  Z RS(   c         C   s   d S(   Nl   c (    (   t   self(    (    s#   lib/python2.7/test/test_getargs2.pyt   __int__C   s    (   t   __name__t
   __module__R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR   B   s   t   Intc           B   s   e  Z d  „  Z RS(   c         C   s   d S(   Nic   (    (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyR   G   s    (   R   R   R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR   F   s   t   Floatc           B   s   e  Z d  „  Z RS(   c         C   s   d S(   Ng      @(    (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt	   __float__L   s    (   R   R   R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR   K   s   t   FloatSubclassc           B   s   e  Z RS(    (   R   R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR   O   s   t   FloatSubclass2c           B   s   e  Z d  „  Z RS(   c         C   s   d S(   Ng      @(    (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyR   S   s    (   R   R   R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR    R   s   t   BadFloatc           B   s   e  Z d  „  Z RS(   c         C   s   d S(   Ni¯  (    (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyR   W   s    (   R   R   R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR!   V   s   t	   BadFloat2c           B   s   e  Z d  „  Z RS(   c         C   s
   t  d ƒ S(   Ng      @(   R   (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyR   [   s    (   R   R   R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR"   Z   s   t	   BadFloat3c           B   s   e  Z d  „  Z RS(   c         C   s
   t  d ƒ S(   Ng      @(   R   (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyR   _   s    (   R   R   R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR#   ^   s   t   Complexc           B   s   e  Z d  „  Z RS(   c         C   s   d S(   Ng      @y              à?y      @      à?(    (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   __complex__d   s    (   R   R   R%   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR$   c   s   t   ComplexSubclassc           B   s   e  Z RS(    (   R   R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR&   g   s   t   ComplexSubclass2c           B   s   e  Z d  „  Z RS(   c         C   s   d S(   Ng      @y              à?y      @      à?(    (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyR%   k   s    (   R   R   R%   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR'   j   s   t
   BadComplexc           B   s   e  Z d  „  Z RS(   c         C   s   d S(   Ng      ô?(    (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyR%   o   s    (   R   R   R%   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR(   n   s   t   BadComplex2c           B   s   e  Z d  „  Z RS(   c         C   s
   t  d ƒ S(   Ng      @y              à?y      @      à?(   R&   (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyR%   s   s    (   R   R   R%   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR)   r   s   t   BadComplex3c           B   s   e  Z d  „  Z RS(   c         C   s
   t  d ƒ S(   Ng      @y              à?y      @      à?(   R&   (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyR%   w   s    (   R   R   R%   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR*   v   s   t   TupleSubclassc           B   s   e  Z RS(    (   R   R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR+   {   s   t   DictSubclassc           B   s   e  Z RS(    (   R   R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR,   ~   s   t   Unsigned_TestCasec           B   s5   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   sî   d d l  m } |  j t | d ƒ |  j d | t ƒ  ƒ ƒ |  j d | t ƒ  ƒ ƒ |  j t | d ƒ |  j d | d ƒ ƒ |  j t | t ƒ ƒ |  j t | t d ƒ |  j d | d ƒ ƒ |  j d | d ƒ ƒ |  j t | t	 ƒ d  S(	   Niÿÿÿÿ(   t	   getargs_bg…ëQ¸	@ic   i    i   i*   l   * (
   R   R.   t   assertRaisest	   TypeErrort   assertEqualR   R   t   OverflowErrorR   t
   VERY_LARGE(   R   R.   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_b‚   s    c         C   s  d d l  m } |  j t | d ƒ |  j d | t ƒ  ƒ ƒ |  j d | t ƒ  ƒ ƒ |  j t | d ƒ ƒ |  j t | d ƒ ƒ |  j d | d ƒ ƒ |  j t | t ƒ ƒ |  j d | t d ƒ ƒ |  j d | d ƒ ƒ |  j d | d	 ƒ ƒ |  j t t @| t ƒ ƒ d  S(
   Niÿÿÿÿ(   t	   getargs_Bg…ëQ¸	@ic   lÿÿÿÿ i    i   i*   l   * (	   R   R5   R/   R0   R1   R   R   R   R3   (   R   R5   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_B’   s    c         C   sû   d d l  m } |  j t | d ƒ |  j d | t ƒ  ƒ ƒ |  j d | t ƒ  ƒ ƒ |  j t | d ƒ ƒ |  j d | d ƒ ƒ |  j t | t ƒ ƒ |  j d | t d ƒ ƒ |  j d | d ƒ ƒ |  j d | d ƒ ƒ |  j t t @| t ƒ ƒ d  S(	   Niÿÿÿÿ(   t	   getargs_Hg…ëQ¸	@ic   i    i   i*   l   * (	   R   R7   R/   R0   R1   R   R   R   R3   (   R   R7   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_H£   s    c         C   sû   d d l  m } |  j t | d ƒ |  j d | t ƒ  ƒ ƒ |  j d | t ƒ  ƒ ƒ |  j t | d ƒ ƒ |  j d | d ƒ ƒ |  j t | t ƒ ƒ |  j d | t d ƒ ƒ |  j d | d ƒ ƒ |  j d | d ƒ ƒ |  j t t @| t ƒ ƒ d  S(	   Niÿÿÿÿ(   t	   getargs_Ig…ëQ¸	@ic   i    i   i*   l   * (	   R   R9   R/   R0   R1   R   R   R   R3   (   R   R9   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_I´   s    c         C   sõ   d d l  m } |  j t | d ƒ |  j t | t ƒ  ƒ |  j t | t ƒ  ƒ |  j t | d ƒ ƒ |  j d | d ƒ ƒ |  j t | t ƒ ƒ |  j d | t d ƒ ƒ |  j d | d ƒ ƒ |  j d | d ƒ ƒ |  j t t @| t ƒ ƒ d  S(   Niÿÿÿÿ(   t	   getargs_kg…ëQ¸	@i    i   i*   l   * (	   R   R;   R/   R0   R   R   R1   R   R3   (   R   R;   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_kÅ   s    (   R   R   R4   R6   R8   R:   R<   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR-      s
   				t   Signed_TestCasec           B   s,   e  Z d  „  Z d „  Z d „  Z d „  Z RS(   c         C   sò   d d l  m } |  j t | d ƒ |  j d | t ƒ  ƒ ƒ |  j d | t ƒ  ƒ ƒ |  j t | t d ƒ |  j t | t ƒ ƒ |  j t	 | t	 ƒ ƒ |  j t | t	 d ƒ |  j d | d ƒ ƒ |  j d | d ƒ ƒ |  j t | t
 ƒ d  S(   Niÿÿÿÿ(   t	   getargs_hg…ëQ¸	@ic   i   i*   l   * (   R   R>   R/   R0   R1   R   R   R2   R   R   R3   (   R   R>   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_hØ   s    c         C   sò   d d l  m } |  j t | d ƒ |  j d | t ƒ  ƒ ƒ |  j d | t ƒ  ƒ ƒ |  j t | t d ƒ |  j t | t ƒ ƒ |  j t	 | t	 ƒ ƒ |  j t | t	 d ƒ |  j d | d ƒ ƒ |  j d | d ƒ ƒ |  j t | t
 ƒ d  S(   Niÿÿÿÿ(   t	   getargs_ig…ëQ¸	@ic   i   i*   l   * (   R   R@   R/   R0   R1   R   R   R2   R   R   R3   (   R   R@   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_iè   s    c         C   sò   d d l  m } |  j t | d ƒ |  j d | t ƒ  ƒ ƒ |  j d | t ƒ  ƒ ƒ |  j t | t d ƒ |  j t | t ƒ ƒ |  j t	 | t	 ƒ ƒ |  j t | t	 d ƒ |  j d | d ƒ ƒ |  j d | d ƒ ƒ |  j t | t
 ƒ d  S(   Niÿÿÿÿ(   t	   getargs_lg…ëQ¸	@ic   i   i*   l   * (   R   RB   R/   R0   R1   R   R   R2   R	   R
   R3   (   R   RB   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_lø   s    c         C   sò   d d l  m } |  j t | d ƒ |  j d | t ƒ  ƒ ƒ |  j d | t ƒ  ƒ ƒ |  j t | t d ƒ |  j t | t ƒ ƒ |  j t	 | t	 ƒ ƒ |  j t | t	 d ƒ |  j d | d ƒ ƒ |  j d | d ƒ ƒ |  j t | t
 ƒ d  S(   Niÿÿÿÿ(   t	   getargs_ng…ëQ¸	@ic   i   i*   l   * (   R   RD   R/   R0   R1   R   R   R2   R   R   R3   (   R   RD   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_n  s    (   R   R   R?   RA   RC   RE   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR=   ×   s   			s   PY_LONG_LONG not availablet   LongLong_TestCasec           B   s   e  Z d  „  Z d „  Z RS(   c         C   s  d d l  m } t j ƒ  : t j d d t d d d t ƒ|  j d | d	 ƒ ƒ Wd  QXt j ƒ  7 t j d
 d t d d d d ƒ|  j t | d	 ƒ Wd  QX|  j t	 | d ƒ |  j d | t
 ƒ  ƒ ƒ |  j d | t ƒ  ƒ ƒ |  j t | t d ƒ |  j t | t ƒ ƒ |  j t | t ƒ ƒ |  j t | t d ƒ |  j d | d ƒ ƒ |  j d | d ƒ ƒ |  j t | t ƒ d  S(   Niÿÿÿÿ(   R   t   ignoret   categoryt   messages&   .*integer argument expected, got floatt   modulei   g…ëQ¸	@t   errort   unittestt   Helloic   i   i*   l   * (   R   R   t   warningst   catch_warningst   filterwarningst   DeprecationWarningR   R1   R/   R0   R   R   R2   t	   LLONG_MINt	   LLONG_MAXR3   (   R   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_L  s2    c         C   sß   d d l  m } |  j t | d ƒ |  j t | t ƒ  ƒ |  j t | t ƒ  ƒ |  j t | t ƒ ƒ |  j d | d ƒ ƒ |  j d | t d ƒ ƒ |  j d | d ƒ ƒ |  j d | d ƒ ƒ |  j t t @| t ƒ ƒ d  S(   Niÿÿÿÿ(   R   g…ëQ¸	@i    i   i*   l   * (	   R   R   R/   R0   R   R   R1   t
   ULLONG_MAXR3   (   R   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_K<  s    (   R   R   RT   RV   (    (    (    s#   lib/python2.7/test/test_getargs2.pyRF     s   	 t   Float_TestCasec           B   s,   e  Z d  „  Z d „  Z d „  Z d „  Z RS(   c         C   s<   |  j  | | ƒ |  j  t j d | ƒ t j d | ƒ ƒ d  S(   Ni   (   R1   t   matht   copysign(   R   t   actualt   expected(    (    s#   lib/python2.7/test/test_getargs2.pyt   assertEqualWithSignM  s    c         C   sì  d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j t | d
 ƒ |  j | t ƒ  ƒ d ƒ |  j | t d ƒ ƒ d ƒ |  j | t d ƒ ƒ d ƒ |  j t | t ƒ  ƒ |  j | t	 ƒ  ƒ d ƒ |  j | t
 d ƒ ƒ d ƒ x9 t t t t t t f D] } |  j | | ƒ | ƒ qWt t k  rd|  j | t ƒ t ƒ |  j | t ƒ t ƒ n  t t k r |  j | t ƒ d ƒ |  j | t ƒ d	 ƒ n  |  j | d ƒ d ƒ |  j | d	 ƒ d	 ƒ | t ƒ } |  j | | ƒ d  S(   Niÿÿÿÿ(   t	   getargs_fg      @i   g      @y                g      @g        g       €y      @        (   R   R]   R1   R/   R0   R   R   R    R!   R"   R#   R   R   t   INFR   R   R\   t   NANt   assertNotEqual(   R   R]   t   xt   r(    (    s#   lib/python2.7/test/test_getargs2.pyt   test_fQ  s,    "c         C   s¡  d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j t | d ƒ |  j | t ƒ  ƒ d ƒ |  j | t d ƒ ƒ d ƒ |  j | t d ƒ ƒ d ƒ |  j t | t ƒ  ƒ |  j | t	 ƒ  ƒ d ƒ |  j | t
 d ƒ ƒ d ƒ x9 t t t t t t f D] } |  j | | ƒ | ƒ qW|  j t | d t >ƒ |  j t | d t >ƒ |  j | d	 ƒ d	 ƒ |  j | d
 ƒ d
 ƒ | t ƒ } |  j | | ƒ d  S(   Niÿÿÿÿ(   t	   getargs_dg      @i   g      @y                g      @i   g        g       €y      @        (   R   Rd   R1   R/   R0   R   R   R    R!   R"   R#   R   R   R^   R2   t   DBL_MAX_EXPR\   R_   R`   (   R   Rd   Ra   Rb   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_dj  s$    "c         C   sê  d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | t ƒ  ƒ d ƒ |  j | t d ƒ ƒ d ƒ |  j | t d ƒ ƒ d ƒ |  j t | t ƒ  ƒ |  j | t	 ƒ  ƒ d ƒ |  j | t
 d ƒ ƒ d ƒ xm t t t t t t f D]P } t | d
 ƒ } |  j | | ƒ | ƒ t d
 | ƒ } |  j | | ƒ | ƒ q
W|  j | t d d
 ƒ ƒ j d ƒ |  j | t d d
 ƒ ƒ j d ƒ |  j | t d
 d ƒ ƒ j d ƒ |  j | t d
 d ƒ ƒ j d ƒ d  S(   Niÿÿÿÿ(   t	   getargs_Dg      @y              à?y                i   g      @g      @y              Ð?g      ð?g        g       €y      @      à?y      @      à?y      @        y      @        y      @      à?y      @      Ð?y      @      Ð?y      @      Ð?y      @      Ð?y      @      à?y      @      Ð?y      @      Ð?(   R   Rg   R1   R$   R&   R'   R/   R0   R(   R)   R*   R   R   R^   t   complexR\   t   realt   imag(   R   Rg   Ra   t   c(    (    s#   lib/python2.7/test/test_getargs2.pyt   test_D  s&    """"(   R   R   R\   Rc   Rf   Rl   (    (    (    s#   lib/python2.7/test/test_getargs2.pyRW   L  s   			t   Tuple_TestCasec           B   s   e  Z d  „  Z d „  Z RS(   c         C   sg  d d l  m } | d d ƒ } |  j | d ƒ |  j t | ƒ t ƒ | d d Œ } |  j | d ƒ |  j t | ƒ t ƒ | d d g Œ  } |  j | d	 ƒ |  j t | ƒ t ƒ | t d d g ƒ Œ  } |  j | d
 ƒ |  j | t ƒ | ƒ  } |  j | d ƒ |  j t | ƒ t t d  ƒ f ƒ | d Œ  } |  j | d ƒ |  j t | ƒ t t d  ƒ f ƒ d  S(   Niÿÿÿÿ(   t   get_argsi   i   i   (   i   i   (   i   i   (   i   i   i   (   i   i   (   i   i   (    (   (    N(    (    (   (    N(
   R   Rn   R1   t   assertIst   typet   tupleR+   t   assertIsInstancet   assertInt   None(   R   Rn   t   ret(    (    s#   lib/python2.7/test/test_getargs2.pyt	   test_args—  s&    	"c         C   s_   d d l  m } | d d ƒ } |  j | d	 ƒ d d
 d „  ƒ  Y} |  j t | d | ƒ  ƒ d  S(   Niÿÿÿÿ(   t   getargs_tuplei   i   i   t   seqc           B   s   e  Z d  „  Z d „  Z RS(   c         S   s   d S(   Ni   (    (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   __len__º  s    c         S   s
   t  ‚ d  S(   N(   t
   ValueError(   R   t   n(    (    s#   lib/python2.7/test/test_getargs2.pyt   __getitem__¼  s    (   R   R   Ry   R|   (    (    (    s#   lib/python2.7/test/test_getargs2.pyRx   ¹  s   	(   i   i   (   i   i   i   (    (   R   Rw   R1   R/   R0   (   R   Rw   Ru   Rx   (    (    s#   lib/python2.7/test/test_getargs2.pyt
   test_tuple²  s
    (   R   R   Rv   R}   (    (    (    s#   lib/python2.7/test/test_getargs2.pyRm   –  s   	t   Keywords_TestCasec           B   sP   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 RS(   c         C   s‹  d d l  m } | d d d d ƒ } |  j | i d d 6d d 6ƒ |  j t | ƒ t ƒ | d d i d d 6d d 6 } |  j | i d d 6d d 6d d 6ƒ |  j t | ƒ t ƒ | t i d d 6d d 6ƒ   } |  j | i d d 6d d 6ƒ |  j | t ƒ | ƒ  } |  j | i  d  f ƒ |  j t | ƒ t t d  ƒ f ƒ | i    } |  j | i  d  f ƒ |  j t | ƒ t t d  ƒ f ƒ d  S(	   Niÿÿÿÿ(   t
   get_kwargst   ai   t   bi   i   Rk   (
   R   R   R1   Ro   Rp   t   dictR,   Rr   Rs   Rt   (   R   R   Ru   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_kwargsÁ  s      % 	"c         C   s,   |  j  t d d d d f d d
 ƒ d ƒ d  S(   Ni   i   i   i   i   i   i   i   i	   i
   (   i   i   (   i   i   (   i   i   i	   (
   i   i   i   i   i   i   i   i   i	   i
   (   R1   R   (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_positional_argsØ  s    c         C   s2   |  j  t d d d d f d d d d ƒd ƒ d  S(   Ni   i   i   i   i   i   t   arg4i   i   i	   t   arg5i
   (   i   i   (   i   i   (   i   i   i	   (
   i   i   i   i   i   i   i   i   i	   i
   (   R1   R   (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_mixed_argsÞ  s    !c         C   s;   |  j  t d d d d d d d f d
 d d d ƒ d ƒ d  S(   Nt   arg1i   i   t   arg2i   t   arg3i   i   i   R…   i   i   i	   R†   i
   (   i   i   (   i   i   (   i   i   i	   (
   i   i   i   i   i   i   i   i   i	   i
   (   R1   R   (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_keyword_argsä  s    *c         C   s)   |  j  t d d	 d d d d ƒ d
 ƒ d  S(   NRˆ   i   i   R‰   i   R†   i
   iÿÿÿÿ(   i   i   (
   i   i   i   iÿÿÿÿiÿÿÿÿiÿÿÿÿiÿÿÿÿiÿÿÿÿiÿÿÿÿi
   (   R1   R   (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_optional_argsê  s    c         C   sN   y t  d d ƒ Wn) t k
 r< } |  j t | ƒ d ƒ n X|  j d ƒ d  S(   NRˆ   i   i   s*   Required argument 'arg2' (pos 2) not founds!   TypeError should have been raised(   i   i   (   R   R0   R1   t   strt   fail(   R   t   err(    (    s#   lib/python2.7/test/test_getargs2.pyt   test_required_argsð  s
    c         C   s`   y# t  d d d d f d d
 d ƒ Wn) t k
 rN } |  j t | ƒ d ƒ n X|  j d ƒ d  S(   Ni   i   i   i   i   i   i   i   i	   i
   io   s,   function takes at most 5 arguments (6 given)s!   TypeError should have been raised(   i   i   (   i   i   (   i   i   i	   (   R   R0   R1   R   RŽ   (   R   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_too_many_argsø  s
    #c         C   sZ   y t  d
 d d d d d ƒWn) t k
 rH } |  j t | ƒ d ƒ n X|  j d	 ƒ d  S(   Ni   i   i   R†   i
   t   arg666iš  s9   'arg666' is an invalid keyword argument for this functions!   TypeError should have been raised(   i   i   (   R   R0   R1   R   RŽ   (   R   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_invalid_keywordÿ  s
    (
   R   R   Rƒ   R„   R‡   R‹   RŒ   R   R‘   R“   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR~   À  s   							t   Bytes_TestCasec           B   s,   e  Z d  „  Z d „  Z d „  Z d „  Z RS(   c      	   C   sà   d d l  m } |  j t | d ƒ |  j | d ƒ d ƒ t j rX |  j t | d ƒ n  |  j t | t d ƒ ƒ |  j t | t d ƒ ƒ t j	 ƒ   |  j t | t
 d ƒ ƒ Wd  QX|  j t | d ƒ |  j t | d  ƒ d  S(   Niÿÿÿÿ(   t	   getargs_ct   abcR€   ia   u   s(   R   R•   R/   R0   R1   R    t   have_unicodet	   bytearrayt
   memoryviewt   check_py3k_warningst   bufferRt   (   R   R•   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_c
  s    	c      
   C   s  d d l  m } |  j t | d d ƒ |  j t | d d ƒ |  j t | t d ƒ d ƒ |  j t | t d ƒ d ƒ |  j t | t t d ƒ ƒ d ƒ t j ƒ  C |  j t | t d ƒ d ƒ |  j t | t t d ƒ ƒ d ƒ Wd  QX|  j t | d  d ƒ d  S(   Niÿÿÿÿ(   t	   getargs_wR–   i   u   abct   bytesi    (
   R   R   R/   R0   R˜   R™   R    Rš   R›   Rt   (   R   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_w  s    c      
   C   sé   d d l  m } |  j t | d ƒ |  j t | d ƒ |  j t | t d ƒ ƒ |  j t | t d ƒ ƒ |  j t | t t d ƒ ƒ ƒ t j ƒ  = |  j t | t d ƒ ƒ |  j t | t t d ƒ ƒ ƒ Wd  QX|  j t | d  ƒ d  S(   Niÿÿÿÿ(   t   getargs_w_hashR–   u   abcRž   (
   R   R    R/   R0   R˜   R™   R    Rš   R›   Rt   (   R   R    (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_w_hash%  s    c      
   C   s'  d d l  m } |  j t | d ƒ |  j t | d ƒ |  j t | t d ƒ ƒ t d ƒ } |  j | | ƒ d ƒ |  j | t d ƒ ƒ t d ƒ } |  j | t | ƒ ƒ d	 ƒ |  j | t d	 ƒ ƒ t j ƒ  = |  j t | t	 d
 ƒ ƒ |  j t | t	 t d
 ƒ ƒ ƒ Wd  QX|  j t | d  ƒ d  S(   Niÿÿÿÿ(   t   getargs_w_starR–   u   abcRž   R˜   s	   [ytearra]R™   s
   [emoryvie]R›   (   R   R¢   R/   R0   R™   R˜   R1   R    Rš   R›   Rt   (   R   R¢   t   buf(    (    s#   lib/python2.7/test/test_getargs2.pyt   test_w_star3  s    (   R   R   Rœ   RŸ   R¡   R¤   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR”   	  s   			t   String_TestCasec           B   sG   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c      	   C   s×   d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j t | d ƒ |  j t | d ƒ |  j t | t d ƒ ƒ |  j t | t d	 ƒ ƒ t j ƒ   |  j t | t	 d
 ƒ ƒ Wd  QX|  j t | d  ƒ d  S(   Niÿÿÿÿ(   t	   getargs_ss   abcéu   abcR–   s   nul: u   nul: R˜   R™   R›   (   R   R¦   R1   R/   R0   R˜   R™   R    Rš   R›   Rt   (   R   R¦   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_sG  s    c      	   C   s  d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | t d ƒ ƒ d ƒ |  j | t d ƒ ƒ d ƒ t j ƒ  I |  j | t d ƒ ƒ d ƒ |  j | t d ƒ ƒ t t d ƒ ƒ ƒ Wd  QX|  j	 t
 | d  ƒ d  S(	   Niÿÿÿÿ(   t   getargs_s_stars   abcéu   abcR–   s   nul: u   nul: u   abcÃ©(   R   R¨   R1   R˜   R™   R    Rš   R›   R   R/   R0   Rt   (   R   R¨   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_s_starS  s    c      	   C   s  d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j t | t d ƒ ƒ |  j t | t d	 ƒ ƒ t j ƒ  I |  j | t	 d ƒ ƒ d ƒ |  j | t	 d
 ƒ ƒ t
 t	 d
 ƒ ƒ ƒ Wd  QX|  j t | d  ƒ d  S(   Niÿÿÿÿ(   t   getargs_s_hashs   abcéu   abcR–   s   nul: u   nul: R˜   R™   u   abcÃ©(   R   Rª   R1   R/   R0   R˜   R™   R    Rš   R›   R   Rt   (   R   Rª   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_s_hasha  s    c         C   sü   d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j t | t d ƒ ƒ |  j t | t d	 ƒ ƒ t j ƒ  = |  j | t	 d ƒ ƒ d ƒ |  j | t	 d ƒ ƒ d ƒ Wd  QX|  j t | d  ƒ d  S(
   Niÿÿÿÿ(   t   getargs_t_hashs   abcéu   abcR–   s   nul: u   nul: R˜   R™   (   R   R¬   R1   R/   R0   R˜   R™   R    Rš   R›   Rt   (   R   R¬   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_t_hasho  s    "c      	   C   s×   d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j t | d ƒ |  j t | d ƒ |  j t | t d ƒ ƒ |  j t | t d	 ƒ ƒ t j ƒ   |  j t | t	 d
 ƒ ƒ Wd  QX|  j
 | d  ƒ ƒ d  S(   Niÿÿÿÿ(   t	   getargs_zs   abcéu   abcR–   s   nul: u   nul: R˜   R™   R›   (   R   R®   R1   R/   R0   R˜   R™   R    Rš   R›   t   assertIsNoneRt   (   R   R®   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_z|  s    c      	   C   s  d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | t d ƒ ƒ d ƒ |  j | t d ƒ ƒ d ƒ t j ƒ  I |  j | t d ƒ ƒ d ƒ |  j | t d ƒ ƒ t t d ƒ ƒ ƒ Wd  QX|  j	 | d  ƒ ƒ d  S(	   Niÿÿÿÿ(   t   getargs_z_stars   abcéu   abcR–   s   nul: u   nul: u   abcÃ©(   R   R±   R1   R˜   R™   R    Rš   R›   R   R¯   Rt   (   R   R±   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_z_starˆ  s    c      	   C   s  d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j t | t d ƒ ƒ |  j t | t d	 ƒ ƒ t j ƒ  I |  j | t	 d ƒ ƒ d ƒ |  j | t	 d
 ƒ ƒ t
 t	 d
 ƒ ƒ ƒ Wd  QX|  j | d  ƒ ƒ d  S(   Niÿÿÿÿ(   t   getargs_z_hashs   abcéu   abcR–   s   nul: u   nul: R˜   R™   u   abcÃ©(   R   R³   R1   R/   R0   R˜   R™   R    Rš   R›   R   R¯   Rt   (   R   R³   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_z_hash–  s    (	   R   R   R§   R©   R«   R­   R°   R²   R´   (    (    (    s#   lib/python2.7/test/test_getargs2.pyR¥   F  s   						t   Unicode_TestCasec           B   s>   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   si  d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d d ƒ d ƒ |  j | d d ƒ d ƒ |  j t | d d ƒ |  j t | d d	 ƒ |  j t | t d
 ƒ d ƒ |  j t | t d ƒ d ƒ t	 j
 ƒ  C |  j | t d ƒ d ƒ d ƒ |  j | t d ƒ d ƒ d ƒ Wd  QX|  j t | d  d ƒ |  j t | d d ƒ |  j t | d d ƒ d  S(   Niÿÿÿÿ(   t
   getargs_esR–   u   abct   asciiu   abcÃ©t   latin1s   abcét   spamR˜   R™   s   nul: u   nul: (   R   R¶   R1   R/   t   UnicodeEncodeErrort   LookupErrorR0   R˜   R™   R    Rš   R›   Rt   (   R   R¶   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_es§  s"    %c         C   s‚  d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d d ƒ d ƒ |  j | d d ƒ d ƒ |  j | d d ƒ d ƒ |  j t | d d ƒ |  j t | d d	 ƒ |  j t | t d
 ƒ d ƒ |  j t | t d ƒ d ƒ t	 j
 ƒ  C |  j | t d ƒ d ƒ d ƒ |  j | t d ƒ d ƒ d ƒ Wd  QX|  j t | d  d ƒ |  j t | d d ƒ |  j t | d d ƒ d  S(   Niÿÿÿÿ(   t
   getargs_ets   abcéu   abcR–   R·   u   abcÃ©R¸   R¹   R˜   R™   s   nul: u   nul: (   R   R½   R1   R/   Rº   R»   R0   R˜   R™   R    Rš   R›   Rt   (   R   R½   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_etº  s$    %c         C   s/  d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d d ƒ d ƒ |  j t | d d ƒ |  j t | d d	 ƒ |  j t | t d
 ƒ d ƒ |  j t | t d ƒ d ƒ t	 j
 ƒ  C |  j | t d ƒ d ƒ d ƒ |  j | t d ƒ d ƒ d ƒ Wd  QX|  j t | d  d ƒ |  j | d d ƒ d ƒ |  j | d d ƒ d ƒ t d ƒ } |  j | d d | ƒ d ƒ |  j | t d ƒ ƒ t d ƒ } |  j | d d | ƒ d ƒ |  j | t d ƒ ƒ t d ƒ } |  j t | d d | ƒ |  j | t d ƒ ƒ t ƒ  } |  j t | d d | ƒ d  S(   Niÿÿÿÿ(   t   getargs_es_hashR–   u   abcu   abcÃ©R¸   s   abcéR·   R¹   R˜   R™   s   nul: u   nul: Ra   i   s   abcé xxxi   s   abcé i   t   xxxxxxxxt   xxxxxt   xxxxRÂ   (   R   R¿   R1   R/   Rº   R»   R0   R˜   R™   R    Rš   R›   Rt   (   R   R¿   R£   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_es_hashÎ  s6    %	c         C   sH  d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j | d d ƒ d ƒ |  j | d d ƒ d ƒ |  j t | d d ƒ |  j t | d d	 ƒ |  j t | t d
 ƒ d ƒ |  j t | t d ƒ d ƒ t	 j
 ƒ  C |  j | t d ƒ d ƒ d ƒ |  j | t d ƒ d ƒ d ƒ Wd  QX|  j t | d  d ƒ |  j | d d ƒ d ƒ |  j | d d ƒ d ƒ t d ƒ } |  j | d d | ƒ d ƒ |  j | t d ƒ ƒ t d ƒ } |  j | d d | ƒ d ƒ |  j | t d ƒ ƒ t d ƒ } |  j t | d d | ƒ |  j | t d ƒ ƒ t ƒ  } |  j t | d d | ƒ d  S(   Niÿÿÿÿ(   t   getargs_et_hashs   abcéu   abcR–   R·   u   abcÃ©R¸   R¹   R˜   R™   s   nul: u   nul: Ra   i   s   abcé xxxi   s   abcé i   RÀ   RÁ   RÂ   RÂ   (   R   RÄ   R1   R/   Rº   R»   R0   R˜   R™   R    Rš   R›   Rt   (   R   RÄ   R£   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_et_hashì  s:    
%	c      	   C   sÁ   d d l  m } |  j | d ƒ d ƒ |  j t | d ƒ |  j t | d ƒ |  j t | t d ƒ ƒ |  j t | t d ƒ ƒ t j ƒ   |  j t | t	 d ƒ ƒ Wd  QX|  j t | d  ƒ d  S(	   Niÿÿÿÿ(   t	   getargs_uu   abcÃ©u   nul: Rž   R˜   R™   R›   (   R   RÆ   R1   R/   R0   R˜   R™   R    Rš   R›   Rt   (   R   RÆ   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_u  s    c      	   C   sÄ   d d l  m } |  j | d ƒ d ƒ |  j | d ƒ d ƒ |  j t | d ƒ |  j t | t d ƒ ƒ |  j t | t d ƒ ƒ t j ƒ   |  j t | t	 d ƒ ƒ Wd  QX|  j t | d  ƒ d  S(	   Niÿÿÿÿ(   t   getargs_u_hashu   abcÃ©u   nul: Rž   R˜   R™   R›   (   R   RÈ   R1   R/   R0   R˜   R™   R    Rš   R›   Rt   (   R   RÈ   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_u_hash  s    (   R   R   R¼   R¾   RÃ   RÅ   RÇ   RÉ   (    (    (    s#   lib/python2.7/test/test_getargs2.pyRµ   ¥  s   				 	t   Object_TestCasec           B   s,   e  Z d  „  Z d „  Z e j d „  ƒ Z RS(   c         C   s­   d d l  m } d } |  j | | ƒ | ƒ |  j t | t d ƒ ƒ t j rd |  j t | d ƒ n  |  j t | d  ƒ |  j t | t	 | ƒ ƒ |  j t | t
 | ƒ ƒ d  S(   Niÿÿÿÿ(   t	   getargs_SR   R˜   u   unicode(   R   RË   Ro   R/   R0   R˜   R    R—   Rt   R™   R›   (   R   RË   t   obj(    (    s#   lib/python2.7/test/test_getargs2.pyt   test_S$  s    	c         C   s­   d d l  m } t d ƒ } |  j | | ƒ | ƒ |  j t | d ƒ t j rd |  j t | d ƒ n  |  j t | d  ƒ |  j t | t	 | ƒ ƒ |  j t | t
 | ƒ ƒ d  S(   Niÿÿÿÿ(   t	   getargs_YR˜   R   u   unicode(   R   RÎ   R˜   Ro   R/   R0   R    R—   Rt   R™   R›   (   R   RÎ   RÌ   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_Y/  s    	c         C   s¡   d d l  m } d } |  j | | ƒ | ƒ |  j t | d ƒ |  j t | t d ƒ ƒ |  j t | d  ƒ |  j t | t | ƒ ƒ |  j t | t | ƒ ƒ d  S(   Niÿÿÿÿ(   t	   getargs_Uu   unicodeR   R˜   (	   R   RÐ   Ro   R/   R0   R˜   Rt   R™   R›   (   R   RÐ   RÌ   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_U:  s    (   R   R   RÍ   RÏ   R    t   requires_unicodeRÑ   (    (    (    s#   lib/python2.7/test/test_getargs2.pyRÊ   #  s   		t   SkipitemTestc           B   s   e  Z d  „  Z d „  Z RS(   c         C   s[  d } d } i d d 6} d d g } x/t  d d ƒ D]} t | ƒ } | d k rY q5 n  | d } y  t j | | | | ƒ t } WnA t k
 r° }	 d	 }
 t |	 ƒ |
 k } n t k
 rÆ t } n Xd
 | } y  t j | | | | ƒ t } Wn4 t k
 r'}	 d j | ƒ }
 t |	 ƒ |
 k } n Xd j | | | | ƒ } |  j	 | | | ƒ q5 Wd S(   sB  
        If this test failed, you probably added a new "format unit"
        in Python/getargs.c, but neglected to update our poor friend
        skipitem() in the same file.  (If so, shame on you!)

        With a few exceptions**, this function brute-force tests all
        printable ASCII*** characters (32 to 126 inclusive) as format units,
        checking to see that PyArg_ParseTupleAndKeywords() return consistent
        errors both when the unit is attempted to be used and when it is
        skipped.  If the format unit doesn't exist, we'll get one of two
        specific error messages (one for used, one for skipped); if it does
        exist we *won't* get that error--we'll get either no error or some
        other error.  If we get the specific "does not exist" error for one
        test and not for the other, there's a mismatch, and the test fails.

           ** Some format units have special funny semantics and it would
              be difficult to accommodate them here.  Since these are all
              well-established and properly skipped in skipitem() we can
              get away with not testing them--this test is really intended
              to catch *new* format units.

          *** Python C source files must be ASCII.  Therefore it's impossible
              to have non-ASCII format units.

        i    i   R   R€   i    i   s   ()e|t   is(   argument 1 (impossible<bad format char>)t   |s!   impossible<bad format char>: '{}'s€   test_skipitem_parity: detected mismatch between convertsimple and skipitem for format unit '{}' ({}), not skipped {}, skipped {}N(    (   i    (
   t   ranget   chrR   t   parse_tuple_and_keywordst   FalseR0   R   t   RuntimeErrort   formatRo   (   R   t   empty_tuplet   tuple_1t   dict_bt   keywordsRÔ   Rk   RÛ   t   when_not_skippedt   et   st   optional_formatt   when_skippedRI   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_skipitemH  s:    






c         C   sR  t  j } d } d } i d d 6} d d g } d } xŽ t j D]ƒ } xz d D]r } | | }	 d |	 d }
 |	 | k r‹ | | | |
 | ƒ qK |  j t t f d ƒ  | | | |
 | ƒ Wd  QXqK Wq> Wx† t t t	 d d ƒ ƒ D]l } d | }	 d |	 d }
 | d k r| | | |
 | ƒ qÞ |  j t d ƒ  | | | |
 | ƒ Wd  QXqÞ Wd  S(   Ni    i   R   R€   s   s#s   s*s   z#s   z*s   u#s   t#s   w#s   w*s   #*RÕ   RÔ   s   impossible<bad format char>i    i€   Rá   t   st(    (   i    (   s   s#s   s*s   z#s   z*s   u#s   t#s   w#s   w*(
   R   RØ   t   stringt   ascii_letterst   assertRaisesRegexpRÚ   R0   t   mapR×   RÖ   (   R   t   parseRÜ   RÝ   RÞ   Rß   t	   supportedRk   t   c2t   fRã   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_skipitem_with_suffixŒ  s.    	

!
	
(   R   R   Rå   Rï   (    (    (    s#   lib/python2.7/test/test_getargs2.pyRÓ   F  s   	Dt   ParseTupleAndKeywords_Testc           B   s   e  Z d  „  Z d „  Z RS(   c         C   sŠ   |  j  t t j d i  d g  ƒ |  j  t t j d i  d d ƒ |  j  t t j d i  d d g d ƒ |  j  t t j d i  d d g ƒ d  S(   Ni*   t    (    (    (    (    (   R/   R0   R   RØ   Rz   (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_parse_tuple_and_keywords¬  s    c         C   sm   |  j  t t j d i  d d g ƒ |  j  t t j d i  d d d g ƒ |  j  t t j d	 i  d d g ƒ d  S(
   Ni   s   ||OR€   s   |OR   s   |OO(   i   (   i   (   i   (   R/   R0   R   RØ   RÚ   (   R   (    (    s#   lib/python2.7/test/test_getargs2.pyt   test_bad_use·  s    (   R   R   Rò   Ró   (    (    (    s#   lib/python2.7/test/test_getargs2.pyRð   ª  s   	t   Test_testcapic           B   s(   e  Z e ƒ  j d  „  e e ƒ Dƒ ƒ RS(   c         c   sB   |  ]8 } | j  d  ƒ r | j d ƒ r | t t | ƒ f Vq d S(   t   test_t   _codeN(   t
   startswitht   endswitht   getattrR   (   t   .0t   name(    (    s#   lib/python2.7/test/test_getargs2.pys	   <genexpr>Ã  s   (   R   R   t   localst   updatet   dirR   (    (    (    s#   lib/python2.7/test/test_getargs2.pyRô   Â  s   c          C   s8   t  t t t t t t t t t	 t
 g }  t j |  Œ  d  S(   N(   R=   R-   RF   Rm   R~   R”   R¥   Rµ   RÓ   Rð   Rô   R    t   run_unittest(   t   tests(    (    s#   lib/python2.7/test/test_getargs2.pyt	   test_mainÈ  s
    		t   __main__l            l   ÿÿÿÿ l            lûÿÿÿ         l            l   ÿÿÿÿ (    (    (    (    (    (    (    (    (P   RL   RX   Rç   t   syst   testR    t   import_moduleR   R   RN   t   LARGER3   R   R   R   R   R   R   R	   R
   R   R   R   R   R   R   R   R   t
   float_infot   max_expRe   t   floatR^   R_   R   R   t   ImportErrorRÙ   t   _PY_LONG_LONG_availablet   TrueRS   RR   RU   R   R   R   R   R    R!   R"   R#   R$   Rh   R&   R'   R(   R)   R*   Rq   R+   R‚   R,   t   TestCaseR-   R=   t
   skipUnlessRF   RW   Rm   R~   R”   R¥   RÒ   Rµ   RÊ   RÓ   Rð   Rô   R  R   (    (    (    s#   lib/python2.7/test/test_getargs2.pyt   <module>   sn   "j
VC1J*I=_	}#d	