B
    
\KWo                 @   sV   d dl Z d dlmZ d dlmZmZmZ d dlmZ edfddZ	dd Z
d	d
 ZdS )    N)builtins_is_valid_args_is_partial_args)PY3Fc                s2  |   fdd} | dd d ks$t tj}| ||ks:t | |dsHt | |dddks\t | |dddkspt tj}| |st | |dst | |ddst | |ddst | |ddd	st | |ddddkst | |ddd
dkst | |ddd
d	dkst tj}| |st | |ds,t | |dds>t | |ddsPt | |dddsdt | |dddsxt | |dd|kst | |ddd
dkst tj}| ||kst | |d|kst | |ddst | |ddd
st | |ddd
dst tj}| ||ks&t | |ds6t | |dddksLt | |dds^t | |ddd
srt | |d d|kst | |dd dst | |ddd dst | |ddd
d dst | |d d dto|kst | |dd d dtkst | |ddd d ddkst | |ddd
d d ddks<t tj}| ||ksTt | |dsdt | |ddsvt | |ddd
st | |ddd
ddkst | |ddd
ddkst t	j
} |di |kst  |dddi|kst  |di st  |dddist  |di s.t d S )Nc                s    | ||S )N )funcargskwargs)orig_check_validr   :lib/python3.7/site-packages/toolz/tests/test_signatures.py<lambda>	   s    ztest_is_valid.<locals>.<lambda>c             S   s   d S )Nr   )xr   r   r   r      s       )r   F   )real)imag   )base)r   r      )iterable)key)r   default)stepr   r   )r   )r   r   )AssertionErrorr   abscomplexintmapminr   range	functoolspartial)check_valid
incompletefr   )r
   r   test_is_valid   sv    r%   c               C   s   t tdd d S )NT)r"   r#   )r%   r   r   r   r   r   test_is_partialM   s    r&   c               C   s^   t ddd kstt dts$tt d d ks6tt d d ksHtt d d ksZtd S )Nr   )_sigsZ	_is_arityr   allZ_has_varargsZ_has_keywordsZ_num_required_argsr   r   r   r   test_for_coverageQ   s
    r)   )r    Ztoolz._signaturesZ_signaturesr'   r   r   r   Ztoolz.compatibilityr   r%   r&   r)   r   r   r   r   <module>   s   F