
    Mh                     T    S SK rS SKrS SKrS SKJr  S SKJ	r	  S SK
Jr   " S S5      rg)    N)ExtensionArray)EABackedBlockc                       \ rS rSrS rS rS rS rS rS r	\
R                  R                  SS	S
/5      S 5       rS rS rS rS rS rS rS rSrg)BaseConstructorsTests
   c                     [        U5      R                  XR                  S9n[        R                  " X!5        US S n[        U5      R                  XR                  S9n[        R                  " X!5        g )Ndtyper   )type_from_sequencer
   tmassert_extension_array_equalselfdataresults      Z/var/www/html/env/lib/python3.13/site-packages/pandas/tests/extension/base/constructors.pytest_from_sequence_from_cls1BaseConstructorsTests.test_from_sequence_from_cls   s_    d**4zz*B
''5BQxd**4zz*B
''5    c                     US   US   US   /nUR                  X!R                  S9n[        U[        U5      5      (       d   eg )Nr         r	   )r   r
   
isinstancer   )r   r   scalarsr   s       r   test_array_from_scalars-BaseConstructorsTests.test_array_from_scalars   sH    7DGT!W-$$WJJ$?&$t*----r   c                 Z   [         R                  " USS9nUR                  UR                  :X  d   e[        U5      [        U5      :X  d   e[	        UR
                  S5      (       a.  [        UR
                  R                  S   [        5      (       d   eUR
                  R                  UL d   e[         R                  " U5      nUR                  UR                  :X  d   e[	        UR
                  S5      (       a/  [        UR
                  R                  S   [        5      (       d   eg g )NF)copyblocksr   )
pdSeriesr
   lenhasattr_mgrr   r    r   array)r   r   r   result2s       r   test_series_constructor-BaseConstructorsTests.test_series_constructor   s    4e,||tzz)))6{c$i'''6;;))fkk003]CCCC{{  D((( ))F#}}

***6;;))gll11!4mDDDD *r   c                 >   [         R                  " / SQUS9n[         R                  " U/S-  / SQUS9n[        R                  " X45        [         R                  " / US9n[         R                  " / [         R                  " / SS9US9n[        R                  " X45        g )Nr   r      indexr
   r,   objectr	   )r!   r"   r   assert_series_equalIndexr   r
   na_valuer   expecteds        r   *test_series_constructor_no_data_with_index@BaseConstructorsTests.test_series_constructor_no_data_with_index&   su    %899hZ!^9EJ
v0 5199Rrxx('C5Q
v0r   c                     [         R                  " U/ SQUS9n[         R                  " U/S-  / SQUS9n[        R                  " X45        g )Nr+   r-   r,   r!   r"   r   r0   r2   s        r   ,test_series_constructor_scalar_na_with_indexBBaseConstructorsTests.test_series_constructor_scalar_na_with_index0   s:    89EB99hZ!^9EJ
v0r   c                 ,   US   n[         R                  " U/ SQUS9n[         R                  " U/S-  / SQUS9n[        R                  " XE5        [         R                  " US/US9n[         R                  " U/S/US9n[        R                  " XE5        g )Nr   r+   r-   r,   foor8   )r   r   r
   scalarr   r4   s         r   )test_series_constructor_scalar_with_index?BaseConstructorsTests.test_series_constructor_scalar_with_index5   s{    a6%@99fX\%H
v06%>99fXeWEB
v0r   from_seriesTFc                    U(       a  [         R                  " U5      n[         R                  " SU05      nUR                  S   UR                  :X  d   eUR
                  [        U5      S4:X  d   e[        UR                  S5      (       a.  [        UR                  R                  S   [        5      (       d   e[        UR                  R                  S   [        5      (       d   eg )NAr   r    r   )r!   r"   	DataFramedtypesr
   shaper#   r$   r%   r   r    r   arraysr   )r   r   r@   r   s       r   $test_dataframe_constructor_from_dict:BaseConstructorsTests.test_dataframe_constructor_from_dict?   s    99T?DsDk*}}S!TZZ///||D	1~---6;;))fkk003]CCCC&++,,Q/@@@@r   c                    [         R                  " [         R                  " U5      5      nUR                  S   UR                  :X  d   eUR
                  [        U5      S4:X  d   e[        UR                  S5      (       a.  [        UR                  R                  S   [        5      (       d   e[        UR                  R                  S   [        5      (       d   eg )Nr   r   r    )r!   rC   r"   rD   r
   rE   r#   r$   r%   r   r    r   rF   r   r   s      r   test_dataframe_from_series0BaseConstructorsTests.test_dataframe_from_seriesJ   s    biio.}}Q4::---||D	1~---6;;))fkk003]CCCC&++,,Q/@@@@r   c                     Sn[         R                  " [        US9   [        R                  " US S / SQS9  S S S 5        g ! , (       d  f       g = f)Nz;Length of values \(3\) does not match length of index \(5\))matchr,   )r   r   r   r,      r.   )pytestraises
ValueErrorr!   r"   )r   r   msgs      r   )test_series_given_mismatched_index_raises?BaseConstructorsTests.test_series_given_mismatched_index_raisesR   s5    L]]:S1IId2Aho6 211s   A  
Ac                 V   UR                   n[        R                  " U5      n[        R                  " [        U5      US9n[        R
                  " XC5        [        R                  " [        U5      [        U5      S9n[        R
                  " XC5        [        R                  " U5      R                  U5      n[        R                  " [        U5      US9n[        R                  " XC5        [        R                  " [        U5      [        U5      S9n[        R                  " XC5        g Nr	   )
r
   r!   r"   listr   r0   strrC   astypeassert_frame_equal)r   r   r
   r4   r   s        r   test_from_dtype%BaseConstructorsTests.test_from_dtypeW   s    

99T?4:U3
v04:SZ8
v0 <<%,,U3d4j6
f/d4jE
;
f/r   c                 \    [         R                  " U5      n[        R                  " X!5        g )N)r!   r&   r   r   r   s      r   test_pandas_array'BaseConstructorsTests.test_pandas_arrayk   s    $
''5r   c                     [         R                  " U[        R                  " [        5      S9n[         R
                  R                  [        R                  " U[        S95      n[        R                  " X#5        g rW   )
r!   r&   npr
   r/   rF   NumpyExtensionArrayasarrayr   assert_equal)r   r   r   r4   s       r   test_pandas_array_dtype-BaseConstructorsTests.test_pandas_array_dtypep   sF    $bhhv&679900D1OP
)r   c                     [         R                  " S/US9n[         R                  " S[         R                  " / US90[         R                  " S5      S9n[        R
                  " X#5        g )Na)columnsr
   r	   r   rO   )r!   rC   r&   
RangeIndexr   r[   )r   r
   r   r4   s       r   test_construct_empty_dataframe4BaseConstructorsTests.test_construct_empty_dataframev   sP    se59<<"((2U+,BMM!4D
 	f/r   c                    UR                  5       nUR                  SUS9n[        X25      (       d   eUR                  U:X  d   eUR                  S:X  d   eUR                  S5      n[        XB5      (       d   eUR                  U:X  d   eUR                  S:X  d   eUR                  S5      n[        XB5      (       d   eUR                  U:X  d   eUR                  S:X  d   eg )N)rN   r	   rN   )construct_array_type_emptyr   r
   rE   empty)r   r
   clsr   r'   s        r   
test_empty BaseConstructorsTests.test_empty~   s    ((*D.&&&&&||u$$$||t### ++d#'''''}}%%%}}$$$++a.'''''}}%%%}}$$$r    N)__name__
__module____qualname____firstlineno__r   r   r(   r5   r9   r>   rP   markparametrizerG   rJ   rT   r\   r_   rf   rl   rs   __static_attributes__ru   r   r   r   r   
   sp    6.
E11
1 [[]T5M:A ;AA7
0(6
*0%r   r   )numpyrb   rP   pandasr!   pandas._testing_testingr   pandas.api.extensionsr   pandas.core.internals.blocksr   r   ru   r   r   <module>r      s#        0 6D% D%r   