
    Eg                     \    d dl m Z  d dlZd dlZd dlmZmZmZ d dlm	Z
  G d d          ZdS )    )datetimeN)Index
RangeIndexSeriesc                   b   e Zd Zej                            dddg          ej                            ddi dddfd	i dddfd
i dddfdi dddfdi dddfdddidddfdddidddfg          d                         Zd Zej                            d eddg           e	ddg           e
j        ddg          g  e
j        dd           e
j        dg          dgg          d             Zej                            dd eddddd          g          d             Zd Zd Zd Zd Zd ZdS )TestRangeIndexConstructorsnameNfoozargs, kwargs, start, stop, step)   r   r      )r   r   )r   r      r   )r   )r   r    startstopc                 .   t          |d|i|}t          t          j        |||t          j                  |          }t          |t                     sJ |j        |u sJ |j        t          |||          k    sJ t          j
        ||d           d S )Nr	   dtyper	   equivexact)r   r   nparangeint64
isinstancer	   _rangerangetmassert_index_equal)	selfargskwargsr   r   stepr	   resultexpecteds	            b/var/www/sysmax/venv/lib/python3.11/site-packages/pandas/tests/indexes/ranges/test_constructors.pytest_constructorz+TestRangeIndexConstructors.test_constructor   s     T77775$BHEEEDQQQ&*-----{d""""}eT4 8 88888
fhg>>>>>>    c                    d}t          j        t          |          5  t                       d d d            n# 1 swxY w Y   t          j        t          |          5  t          d           d d d            n# 1 swxY w Y   d}t          j        t          |          5  t	          d           d d d            d S # 1 swxY w Y   d S )Nz1RangeIndex\(\.\.\.\) must be called with integersmatchFoor   zKIndex\(\.\.\.\) must be called with a collection of some kind, 0 was passedr   )pytestraises	TypeErrorr   r   )r    msgs     r&   test_constructor_invalid_argsz8TestRangeIndexConstructors.test_constructor_invalid_args$   s   F]9C000 	 	LLL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ]9C000 	# 	#E""""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#
" 	 ]9C000 	 	!HHH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s1   9= =A<<B B $CCCr!   ab
   c                     dt          |          j         }t          j        t          |          5  t          |           d d d            d S # 1 swxY w Y   d S )Nz+Value needs to be a scalar value, was type r*   )type__name__r-   r.   r/   r   r    r!   r0   s      r&   (test_constructor_additional_invalid_argszCTestRangeIndexConstructors.test_constructor_additional_invalid_args4   s     RDJJ<OQQ]9C000 	 	t	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   AAAi  c                     dt          |           d| }t          j        t          |          5  t	          |           d d d            d S # 1 swxY w Y   d S )NzWrong type z for value r*   )r6   r-   r.   r/   r   r8   s      r&   (test_constructor_invalid_args_wrong_typezCTestRangeIndexConstructors.test_constructor_invalid_args_wrong_typeE   s    9DJJ99499]9C000 	 	t	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   AAAc                    t          ddd          }t          |d          }|                    |          sJ t          |d          }t          j        ||d           t          |          }t          j        ||d           t	          j        t          d	          5  t          |d
           d d d            d S # 1 swxY w Y   d S )Nr   r   r   FcopyTr   CIncorrect `dtype` passed: expected signed integer, received float64r*   float64r   )r   	identicalr   r   r-   r.   
ValueError)r    indexr$   s      r&   test_constructor_samez0TestRangeIndexConstructors.test_constructor_sameK   s$   1a##E...&&&&&E---
fe48888E""
fe48888]W
 
 
 	/ 	/ uI....		/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/s   #CC	Cc                     t          t          ddd                    }t          ddd          }t          j        ||d           d S )Nr   r   r   Tr   )r   r   r   r   )r    r$   r%   s      r&   test_constructor_range_objectz8TestRangeIndexConstructors.test_constructor_range_object]   sH    E!QNN++aA&&
fhd;;;;;;r(   c                    t          j        t          ddd                    }t          ddd          }t          j        ||d           t          j        t          dd                    }t          ddd          }t          j        ||d           t          j        t          dd                    }t          ddd          }t          j        ||d           t          j        t          d                    }t          ddd          }t          j        ||d           t          t          ddd                    }t          ddd          }t          j        ||d           d}t          j        t          |	          5  t          j        t          d
          d           d d d            d S # 1 swxY w Y   d S )Nr   r   r   Tr      r   zI(RangeIndex.)?from_range\(\) got an unexpected keyword argument( 'copy')?r*   r4   r=   )	r   
from_ranger   r   r   r   r-   r.   r/   )r    r$   r%   r0   s       r&   test_constructor_rangez1TestRangeIndexConstructors.test_constructor_rangeb   s   &uQ1~~66aA&&
fhd;;;;&uQ{{33aA&&
fhd;;;; &uQ{{33aA&&
fhd;;;;&uQxx00aA&&
fhd;;;;uQ1~~&&aA&&
fhd;;;; Y 	 ]9C000 	8 	8!%))$7777	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8s   $F==GGc                 &   t          d          }d|_        t          |          }d|_        |j        dk    sJ |j        dk    sJ t          |          }|j        dk    sJ d|_        |j        dk    sJ |j        dk    sJ |j        dk    sJ d S )Nr4   originalr>   new)r   r	   r   )r    origr>   rM   s       r&   test_constructor_namez0TestRangeIndexConstructors.test_constructor_name~   s    "~~	$	yJ&&&&yF""""Dkkx6!!!!yJ&&&&yF""""x5      r(   c                    t          j        g dt                    }t          dd          }|j        j        t           j        k    sJ t          |                              d          }t          j
        ||d           t          j        t          d	          5  t          d
dd
           d d d            n# 1 swxY w Y   t          j        t          d	          5  t          ddd           d d d            n# 1 swxY w Y   t          j        t          d	          5  t          ddd           d d d            d S # 1 swxY w Y   d S )N)r   r         r   r   r   r   r   r   zWrong type \<class 'str'\>r*   110zWrong type \<class 'float'\>g?gffffff$@g?r?   r@   )r   arrayobjectr   valuesr   r   r   astyper   r   r-   r.   r/   rB   )r    arrrC   r%   s       r&   test_constructor_cornerz2TestRangeIndexConstructors.test_constructor_corner   s   h|||62221a  |!RX----::$$W--
eXW==== ]9,IJJJ 	' 	'sD#&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	']9,KLLL 	' 	'sD#&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' ]W
 
 
 	. 	. q!9----		. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	.s6   B<<C C "D  DD&EE
E
)r7   
__module____qualname__r-   markparametrizer'   r1   r   r   r   rU   r   r9   r   r;   rD   rF   rJ   rO   rZ   r   r(   r&   r   r      s
       [VdE]33[)2q!QRAq!Aq!$2q!QRAq!'1q!Q'&!aA&	
 ? ?  43?    [E3*FC:BHc3Z  BIaBHaSMMC	
   
 [VeXXdAq!Q-G-G%HII  JI
/ / /$< < <
8 8 88! ! !&. . . . .r(   r   )r   numpyr   r-   pandasr   r   r   pandas._testing_testingr   r   r   r(   r&   <module>rc      s                       
      V. V. V. V. V. V. V. V. V. V.r(   