
     j'                     v   d Z ddlZddlmZ ddlmZ  edddgd          d$d	            Zd
 Zd Z	d Z
d Zd Zd Zd Zd Z ed          d$d            Zd Zd Zd Zd Z ed          d%d            Zd Zd Zd Zd Z ed          d&dddd            Zd Z G d  d!          Zd" Zd# ZdS )'z:
Tests for the `deprecate_nonkeyword_arguments` decorator
    N)deprecate_nonkeyword_argumentsz1.1abf_add_inputs)versionallowed_argsnamec                     | |z   |z   |z   S N r   r   cds       C:\Users\Terasoftware\OneDrive\Desktop\faahhh\fyndo\fyndo\venv\Lib\site-packages\pandas/tests/util/test_deprecate_nonkeyword_arguments.pyfr      s     q519q=    c                  ^    t          t          j        t                              dk    sJ d S )Nz(a, b=0, *, c=0, d=0))strinspect	signaturer   r   r   r   test_f_signaturer      -    w ##$$(???????r   c                      t          j        d           5  t          d          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )N   tmassert_produces_warningr   r   r   r   test_one_argumentr      s    		#D	)	)  uu{                 s   9= =c                      t          j        d           5  t          dd          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )Nr      )r      r   r   r   r   test_one_and_one_argumentsr"      s    		#D	)	)    qzzzR                                      ;??c                      t          j        d           5  t          dd          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )N      r    r   r   r   r   test_two_argumentsr'   !   s    		#D	)	)  Aww!|                 s   :>>c                      t          j        d           5  t          dddd          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )Nr%      r&   r   r      r   r   r   r   test_two_and_two_argumentsr,   &   s    		#D	)	) ' 'Aa   B&&&&&' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '   =AAc                      t          j        t                    5  t          ddd          dk    sJ 	 d d d            d S # 1 swxY w Y   d S Nr    r)   r+   r   r   FutureWarningr   r   r   r   test_three_argumentsr2   +       		#M	2	2    AqzzR                                      A  AAc                      t          j        t                    5  t          dddd          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )Nr%      r)      
   r0   r   r   r   test_four_argumentsr9   0   s    		#M	2	2 # #Aq!}}"""""# # # # # # # # # # # # # # # # # #s   AAAc                      d} t          j        t          |           5  t          ddd          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )NzyStarting with pandas version 1.1 all arguments of f_add_inputs except for the arguments 'a' and 'b' will be keyword-only.matchr    r)   r+   r0   msgs    r   )test_three_arguments_with_name_in_warningr?   5   s    	E  
	#M	=	=	=    AqzzR                                      AAA)r   c                 t    t          j        d           5  | |z   |z   |z   cd d d            S # 1 swxY w Y   d S r   )r   r   r   s       r   grB   >   s    		#D	)	)  1uqy1}                 s   -11c                  ^    t          t          j        t                              dk    sJ d S )Nz(a, *, b=0, c=0, d=0))r   r   r   rB   r   r   r   test_g_signaturerD   D   r   r   c                      t          j        d           5  t          dddd          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )Nr%   r)   r&   )r   r   r   r+   )r   r   rB   r   r   r   1test_one_and_three_arguments_default_allowed_argsrF   H   s    		#D	)	) ) )a1"""b((((() ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )r-   c                      t          j        t                    5  t          ddd          dk    sJ 	 d d d            d S # 1 swxY w Y   d S r/   r   r   r1   rB   r   r   r   )test_three_arguments_default_allowed_argsrI   M   r3   r4   c                      d} t          j        t          |           5  t          ddd          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )NzeStarting with pandas version 1.1 all arguments of g except for the argument 'a' will be keyword-only.r;   r    r)   r+   rH   r=   s    r   <test_three_positional_argument_with_warning_message_analysisrK   R   s    	<  
	#M	=	=	=    AqzzR                                   r@   c                     | |z   |z   |z   S r   r   r   s       r   hrM   [       q519q=r   c                  ^    t          t          j        t                              dk    sJ d S Nz(*, a=0, b=0, c=0, d=0))r   r   r   rM   r   r   r   test_h_signaturerQ   `   -    w ##$$(AAAAAAAr   c                      t          j        d           5  t          dd          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )Nr%   r6   )r   r   r)   )r   r   rM   r   r   r   test_all_keyword_argumentsrT   d   s    		#D	)	)    1{{{a                                   r#   c                      t          j        t                    5  t          d          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )N   r   r   r1   rM   r   r   r   test_one_positional_argumentrX   i   s    		#M	2	2  uu{                 s   >AAc                      d} t          j        t          |           5  t          d          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )NzIStarting with pandas version 1.1 all arguments of h will be keyword-only.r;   r   rW   r=   s    r   :test_one_positional_argument_with_warning_message_analysisrZ   n   s    
UC		#M	=	=	=  uu{                 s   AA	Ar*   c                   | |z   |z   |z   S r   r   r   s       r   ir\   t   rN   r   c                  ^    t          t          j        t                              dk    sJ d S rP   )r   r   r   r\   r   r   r   test_i_signaturer^   y   rR   r   c                   @    e Zd Z edddg          dd            ZdS )FooNselfbar)r   r   c                     d S r   r   )ra   rb   foobars      r   bazzFoo.baz~   s    r   )NN)__name__
__module____qualname__r   re   r   r   r   r`   r`   }   sH        ##DOOO   PO  r   r`   c                  h    t          t          j        t          j                            dk    sJ d S )Nz (self, bar=None, *, foobar=None))r   r   r   r`   re   r   r   r   test_foo_signaturerj      s/    w ))**.PPPPPPPr   c                      d} t          j        t          |           5  t                                          dd           d d d            d S # 1 swxY w Y   d S )NzlIn a future version of pandas all arguments of Foo\.baz except for the argument \'bar\' will be keyword-onlyr;   quxquox)r   r   r1   r`   re   r=   s    r   
test_classrn      s    	@  
	#M	=	=	= ! !		%   ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !s   #AAA)r   r   r   )r   r   r   r   )r   r   )__doc__r   pandas.util._decoratorsr   pandas._testing_testingr   r   r   r   r"   r'   r,   r2   r9   r?   rB   rD   rF   rI   rK   rM   rQ   rT   rX   rZ   r\   r^   r`   rj   rn   r   r   r   <module>rs      sw     B B B B B B        c
     @ @ @  
     
  
' ' '
     
# # #
       ...   /.
@ @ @) ) )
     
       ...   /.B B B     
  
    ...Q     /.B B B       Q Q Q! ! ! ! !r   