
                         N    S SK rS SKrS SKrS SKr " S S\R                  5      rg)    Nc                   Z    \ rS rSr\S 5       rS rS rS rS r	S r
S rS	 rS
 rS rSrg)TestFunctionSignatures	   c                     [         R                  " U 5      n[        S UR                  R	                  5        5       5      UR
                  UR                  L a  [        4$ UR
                  4$ )Nc              3   (  #    U  H  nUR                   UR                  UR                  L a  [        OUR                  UR                  UR                  L a  [        OUR                  [        UR                  5      R                  5       4v   M     g 7fN)namedefaultemptyEllipsis
annotationstrkindlower).0params     ;platform/gsutil/third_party/funcsigs/tests/test_funcsigs.py	<genexpr>3TestFunctionSignatures.signature.<locals>.<genexpr>   sp      J
 2I zz$)MMU[[$@emm$)$4$4$C=B=M=M5::,,.	0
 2Is   BB)inspect	signaturetuple
parametersvaluesreturn_annotationr   r   )funcsigs     r   r    TestFunctionSignatures.signature   sr    % J
 251F1F1HJ J !22cii?I 	I 251F1FI 	I    c                 X    S nU R                  U R                  U5      S[        45        g )Nc                      g r    r"   r   r   test8TestFunctionSignatures.test_zero_arguments.<locals>.test       r   r"   assertEqualr   r   selfr#   s     r   test_zero_arguments*TestFunctionSignatures.test_zero_arguments   s'    	-X	 r   c                 r    S nU R                  U R                  U5      S[        [        S44[        45        g )Nc                     g r   r"   as    r   r#   DTestFunctionSignatures.test_single_positional_argument.<locals>.test   r%   r   r/   positional_or_keywordr&   r(   s     r   test_single_positional_argument6TestFunctionSignatures.test_single_positional_argument   s6    	-8-DEH(S	Ur   c                 n    SS jnU R                  U R                  U5      SS [        S44[        45        g )Nc                     g r   r"   r.   s    r   r#   ATestFunctionSignatures.test_single_keyword_argument.<locals>.test$   r%   r   r/   r1   r   r&   r(   s     r   test_single_keyword_argument3TestFunctionSignatures.test_single_keyword_argument#   s6    	-x)@ADhO	Qr   c                 r    S nU R                  U R                  U5      S[        [        S44[        45        g )Nc                      g r   r"   argss    r   r#   2TestFunctionSignatures.test_var_args.<locals>.test*   r%   r   r<   var_positionalr&   r(   s     r   test_var_args$TestFunctionSignatures.test_var_args)   s6    	-Hh0@ADhO	Qr   c                 r    S nU R                  U R                  U5      S[        [        S44[        45        g )Nc                      g r   r"   )kwargss    r   r#   7TestFunctionSignatures.test_keywords_args.<locals>.test0   r%   r   rC   var_keywordr&   r(   s     r   test_keywords_args)TestFunctionSignatures.test_keywords_args/   s5    	-h-@CXN	Pr   c           
          S	S jnU R                  U R                  U5      S[        [        S4SS [        S4S[        [        S4S[        [        S44[        45        g )
Nc                     g r   r"   )r/   br<   rC   s       r   r#   <TestFunctionSignatures.test_multiple_arguments.<locals>.test6   r%   r   r/   r1   rJ   r<   r>   rC   rE   r   r&   r(   s     r   test_multiple_arguments.TestFunctionSignatures.test_multiple_arguments5   sb    	-(H&=>$"9:Xx)9:x=9	1
 0 	r   c                 B    U R                  [        R                  5        g r   )
assertTruer   __version__r)   s    r   test_has_version'TestFunctionSignatures.test_has_version?   s    ++,r   c                 0    [         R                  " S5        g )Nz../README.rst)doctesttestfilerQ   s    r   test_readme"TestFunctionSignatures.test_readmeB   s     	)r   c                    Sn " S S[         5      nU R                  U R                  UR                  5      S[        [        U44[        45        U R                  U R                  UR
                  5      S[        [        U4S[        [        S44[        45        U R                  U R                  UR                  5      S[        [        S44[        45        g )Nr1   c                   &    \ rS rSrS rS rS rSrg)8TestFunctionSignatures.test_unbound_method.<locals>.TestJ   c                     g r   r"   rQ   s    r   method?TestFunctionSignatures.test_unbound_method.<locals>.Test.methodK       r   c                     g r   r"   )r)   r/   s     r   method_with_argsITestFunctionSignatures.test_unbound_method.<locals>.Test.method_with_argsM   r`   r   c                      g r   r"   r;   s    r   method_with_varargsLTestFunctionSignatures.test_unbound_method.<locals>.Test.method_with_varargsO   r`   r   r"   N)__name__
__module____qualname____firstlineno__r^   rb   re   __static_attributes__r"   r   r   Testr[   J   s    r   rl   r)   r/   r<   r>   )objectr'   r   r^   r   rb   re   )r)   	self_kindrl   s      r   test_unbound_method*TestFunctionSignatures.test_unbound_methodH   s    +		6 	 	NN4;;'(I698D	F 	NN4001x95Hh(?@	
 	NN4334x+;<>I	Kr   r"   N)rg   rh   ri   rj   staticmethodr   r*   r2   r7   r?   rF   rL   rR   rW   ro   rk   r"   r   r   r   r   	   sH    	I 	I UQQP-*Kr   r   )	unittest2unittestrU   sysfuncsigsr   TestCaser   r"   r   r   <module>rw      s'      
 RKX.. RKr   