ó
Ë£,]c           @   sl   d  d l  Z  d  d l j Z d  d l m Z m Z m Z d  d l m Z e e	 d „ Z
 d „  Z d „  Z d S(   iÿÿÿÿN(   t   builtinst   _is_valid_argst   _is_partial_args(   t   PY3c      	      sß  |  ‰  ‡  f d †  }  |  d „  ƒ d  k s0 t ‚ t j } |  | ƒ | k sQ t ‚ |  | d ƒ sf t ‚ |  | d d ƒt k s„ t ‚ |  | d d ƒ t k s¢ t ‚ t j } |  | ƒ s½ t ‚ |  | d ƒ sÒ t ‚ |  | d d ƒsê t ‚ |  | d d ƒ st ‚ |  | d d d ƒst ‚ |  | d d d ƒt k s>t ‚ |  | d d d ƒ t k s_t ‚ |  | d d d d ƒt k sƒt ‚ t j } |  | ƒ sžt ‚ |  | d ƒ s³t ‚ |  | d d ƒsËt ‚ |  | d d ƒ sãt ‚ |  | d d	 d ƒsþt ‚ |  | d d d	 d ƒst ‚ |  | d	 d ƒ| k s:t ‚ |  | d d d ƒ t k s[t ‚ t j } |  | ƒ | k s|t ‚ |  | d ƒ | k s—t ‚ |  | d d ƒ s¯t ‚ |  | d d d ƒ sÊt ‚ |  | d d d d
 ƒ sèt ‚ t j } |  | ƒ | k s	t ‚ |  | d ƒ st ‚ |  | d d ƒt k s<t ‚ |  | d d ƒ sTt ‚ |  | d d d ƒ sot ‚ |  | d d  ƒ| k st ‚ |  | d d d  ƒs¨t ‚ |  | d d d d  ƒsÆt ‚ |  | d d d d d  ƒsçt ‚ |  | d d  d d  ƒt	 o| k st ‚ |  | d d d  d d  ƒt	 k s8t ‚ |  | d d d d  d d  ƒt k sbt ‚ |  | d d d d d  d d  ƒt k st ‚ t j
 } |  | ƒ | k s°t ‚ |  | d ƒ sÅt ‚ |  | d d ƒ sÝt ‚ |  | d d d ƒ søt ‚ |  | d d d d ƒt k st ‚ |  | d d d d
 ƒ t k s@t ‚ t j } ˆ  | d i  ƒ | k sgt ‚ ˆ  | d i d d 6ƒ | k sŒt ‚ ˆ  | d i  ƒ s¤t ‚ ˆ  | d i d d 6ƒ sÃt ‚ ˆ  | d i  ƒ sÛt ‚ d  S(   Nc            s   ˆ  |  | | ƒ S(   N(    (   t   funct   argst   kwargs(   t   orig_check_valid(    s:   lib/python2.7/site-packages/toolz/tests/test_signatures.pyt   <lambda>	   t    c         S   s   d  S(   N(   t   None(   t   x(    (    s:   lib/python2.7/site-packages/toolz/tests/test_signatures.pyR      R	   i   R   i   t   realt   imagi   t   basei   t   iterablet   keyt   defaultt   stepR   (    (    (   i   (   i   (   i   i   (   R
   t   AssertionErrorR    t   abst   Falset   complext   intt   mapt   minR   t   ranget	   functoolst   partial(   t   check_validt
   incompletet   f(    (   R   s:   lib/python2.7/site-packages/toolz/tests/test_signatures.pyt   test_is_valid   sv    		!!$	!		!*'*-	$$	%c           C   s   t  d t d t ƒ d  S(   NR   R   (   R    R   t   True(    (    (    s:   lib/python2.7/site-packages/toolz/tests/test_signatures.pyt   test_is_partialM   s    c           C   s‹   t  j d d ƒ d  k s t ‚ t  j d t ƒ s6 t ‚ t  j d  ƒ d  k sQ t ‚ t  j d  ƒ d  k sl t ‚ t  j d  ƒ d  k s‡ t ‚ d  S(   Ni   (   t   _sigst	   _is_arityR
   R   t   allt   _has_varargst   _has_keywordst   _num_required_args(    (    (    s:   lib/python2.7/site-packages/toolz/tests/test_signatures.pyt   test_for_coverageQ   s
    (   R   t   toolz._signaturest   _signaturesR#   R    R   R   t   toolz.compatibilityR   R   R    R"   R)   (    (    (    s:   lib/python2.7/site-packages/toolz/tests/test_signatures.pyt   <module>   s   F	