
    Mh*+                        S SK rS SKrS SKJr  S SKJr  S SKrS SK	J
r  S SKJr   " S S5      r " S S5      rS S	S\S
S/r/ SQr/ SQr\R&                  R)                  SSSSS\4SSSS\4SSSS\4SSSS\4SSSS\4SSSS\4SSSS\4SSSS\4/5      S 5       r\R&                  R)                  S/ SQ5      S 5       rS rg)    N)iNaT)DatetimeTZDtype)DatetimeArrayc                   $   \ rS rSrS rS rS r\R                  R                  S\
R                  \R                  \R                  /5      S 5       rS rS rS	 rS
 rS rS rS rS r\R                  R                  S/ SQ5      S 5       rSrg)TestDatetimeArrayConstructor   c                 &   [         R                  R                  [        R                  " S5      [        R                  " S5      /5      n[
        R                  " [        SS9   [        R                  " USS9  S S S 5        g ! , (       d  f       g = f)N   zCannot create a DatetimeArraymatchM8[ns]dtype)
pd
MultiIndexfrom_productnparangepytestraises	TypeErrorr   _from_sequence)selfmis     a/var/www/html/env/lib/python3.13/site-packages/pandas/tests/arrays/datetimes/test_constructors.pytest_from_sequence_invalid_type<TestDatetimeArrayConstructor.test_from_sequence_invalid_type   sW    ]]''1ryy|(DE]]9,KL((8< MLLs   #B
Bc           	      ^   [         R                  " / SQSS9R                  S5      nSn[        R                  " [
        US9   [        R                  " [        SS9   [        UR                  SSS	5      5        S S S 5        S S S 5        [        R                  " [
        US9   [        R                  " [        SS9   [        US
/   R                  5       5        S S S 5        S S S 5        g ! , (       d  f       Nx= f! , (       d  f       N= f! , (       d  f       N9= f! , (       d  f       g = f)N)r            zM8[h]r   r   $DatetimeArray.__init__ is deprecatedr   zOnly 1-dimensionalr    r   r   )r   arrayastypetmassert_produces_warningFutureWarningr   r   
ValueErrorr   reshapesqueeze)r   arrdepr_msgs      r   test_only_1dim_accepted4TestDatetimeArrayConstructor.test_only_1dim_accepted   s    hh|73::8D9''XFz1EFckk!Q23 G G
 ''XFz1EFc1#h..01 G GF	 GF GF GF GFsH   C<C+9C<"D<DD+
C9	5C<<
D

D	D
D,c                 >   [         R                  " S[         R                  S9S-  S-  nSnSn[        R                  " [
        US9   [        R                  " [        US9   [        USS	9  S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)
Nr
   r      ʚ;zRInferred frequency h from passed values does not conform to passed frequency W-SUNr"   r   Wfreq)
r   r   int64r%   r&   r'   r   r   r(   r   )r   r+   msgr,   s       r   test_freq_validation1TestDatetimeArrayConstructor.test_freq_validation!   sz     ii*T1E90 	 :''XFz5c, 6 GF55 GFs$   B!A=,B=
B	B
Bmethc                    [         R                  " [        R                  " S5      [        R                  " SSS9/5      nSnX"S S S2   4 H-  n[        R
                  " [        US9   U" U5        S S S 5        M/     g ! , (       d  f       MA  = f)N2000CETtzzuCannot mix tz-aware with tz-naive values|Tz-aware datetime.datetime cannot be converted to datetime64 unless utc=Truer   )r   r#   r   	Timestampr   r   r(   )r   r9   r+   r6   objs        r    test_mixing_naive_tzaware_raises=TestDatetimeArrayConstructor.test_mixing_naive_tzaware_raises/   st     hhV,bll6e.LMN, 	 TrT#C z5S	 65 $ 65s   '	A==
B	c                 2   [         R                  " [        R                  " S[        R                  S95      S-  S-  n[
        R                  " USS9R                  S5      n[         R                  " SSSS	9R                  n[        R                  " X#5        g )
Nr
   r   r0   r1   r   inferz
1970-01-01h)periodsr4   )r   r#   r   r   r5   r   r   
_with_freq
date_range_datar%   assert_datetime_array_equal)r   r+   resultexpecteds       r   test_from_pandas_array3TestDatetimeArrayConstructor.test_from_pandas_arrayG   sl    hhryy"((34t;eC--cBMMgV==qsCII
&&v8    c                    Sn[         R                  " [        US9   [        [        R
                  " S/SS9[        SS9S9nS S S 5        [        SS9nS	n[         R                  " [        US9   [        R                  " [        US9   [        WUS9  S S S 5        S S S 5        [         R                  " [        US9   [        R                  " [        US9   [        W[        R                  " S5      S9  S S S 5        S S S 5        [         R                  " [        US9   [        R                  " [        US9   [        WR                  S 5      UR                  S9  S S S 5        S S S 5        g ! , (       d  f       GN2= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nm= f! , (       d  f       g = f)
Nr"   r   z2000-01-01T06:00:00r   r   
US/Centralr=   
US/EasternzEdtype=datetime64\[ns.*\] does not match data dtype datetime64\[ns.*\])r%   r&   r'   r   r   r#   r   r   r   r   r   tz_localize)r   r,   r+   r   r6   s        r   test_mismatched_timezone_raises<TestDatetimeArrayConstructor.test_mismatched_timezone_raisesO   sK   9''XF/0A%6C G
  <0V''XFy4c/ 5 G
 ''XFy4c();< 5 G ''XFy4cood3399E 5 GF GF 54 GF 54 GF 54 GFsw   &E-.FE?F<F2F!5F2G8$GG-
E<?
F		F
F!
F/	+F22
G 
G	G
G"c                     Sn[         R                  " [        US9   [        R                  " [
        SS9   [        / SQ5        S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)Nr"   r   listr   r    r!   )r%   r&   r'   r   r   r(   r   r   r,   s     r   test_non_array_raises2TestDatetimeArrayConstructor.test_non_array_raisesd   sL    9''XFz8i( 9 GF88 GFs"   A&AA&
A#	A&&
A4c                    [         R                  " / SQSS9nSnSn[        R                  " [        US9   [
        R                  " [        US9   [        U5        S S S 5        S S S 5        Sn[
        R                  " [        US9   [        R                  " USS9  S S S 5        [
        R                  " [        US9   [        R                  " U5        S S S 5        [
        R                  " [        US9   [        R                  " U5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nz= f! , (       d  f       g = f)	NrY   boolr   r"   z-Unexpected value for 'dtype': 'bool'. Must ber   z2dtype bool cannot be converted to datetime64\[ns\]r   )r   r#   r%   r&   r'   r   r   r(   r   r   r   r   DatetimeIndexto_datetime)r   r+   r,   r6   s       r   test_bool_dtype_raises3TestDatetimeArrayConstructor.test_bool_dtype_raisesj   s    hhy/9=''XFz5c" 6 G D]]9C0((H= 1 ]]9C0S! 1 ]]9C0NN3 10 65 GF
 10 10 10sG   D&DD&D7=E5E
D#	D&&
D47
E
E
E'c           	      &   Sn[         R                  " [        US9   [        R                  " [
        SS9   [        [        R                  " / SQSS9SS9  S S S 5        S S S 5        [         R                  " [        US9   [        R                  " [
        SS9   [        [        R                  " / SQSS9SS9  S S S 5        S S S 5        [         R                  " [        US9   [        R                  " [
        SS9   [        [        R                  " / SQSS9S	S9  S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N[= f! , (       d  f       g = f)
Nr"   r   zUnexpected value for 'dtype'.rY   i8r   categoryzm8[s]zM8[D]	r%   r&   r'   r   r   r(   r   r   r#   rZ   s     r   test_incorrect_dtype_raises8TestDatetimeArrayConstructor.test_incorrect_dtype_raises}   s
   9''XFz1PQbhhy=ZP R G ''XFz1PQbhhy=WM R G ''XFz1PQbhhy=WM R GF RQ GF
 RQ GF
 RQ GFsj   D> D-D>?E  E9E "F< E1F-
D;	7D>>
E
E	E  
E.1
E?	;F
Fc                 6   [         R                  " / SQSS9n[         R                  " S5      nSnSn[        R                  " [
        US9   [        R                  " [        US9   [        XS9  S S S 5        S S S 5        [        SS	S
9n[        R                  " [
        US9   [        R                  " [        US9   [        XS9  S S S 5        S S S 5        g ! , (       d  f       Nn= f! , (       d  f       Nw= f! , (       d  f       N9= f! , (       d  f       g = f)NrY   zM8[s]r   r   z'Values resolution does not match dtype.r"   r   UTCns)r>   unit)r   r#   r   r%   r&   r'   r   r   r(   r   r   )r   r+   r   r6   r,   dtype2s         r   "test_mismatched_values_dtype_units?TestDatetimeArrayConstructor.test_mismatched_values_dtype_units   s    hhy0"79''XFz5c/ 6 G !E5''XFz5c0 6 GF	 65 GF 65 GFsH   C(%
C/C("D
<
C9D

C%	!C((
C69
D	D


Dc           	         Sn[         R                  " [        US9   [        R                  " [
        SS9   [        [        R                  " / SQSS9SS9  S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)	Nr"   r   zFrequency inferencerY   rd   r   rE   r3   rf   rZ   s     r   test_freq_infer_raises3TestDatetimeArrayConstructor.test_freq_infer_raises   s[    9''XFz1FGbhhy=GL H GFGG GFs"   A8 A'A8'
A5	1A88
Bc                     [         R                  " / SQSS9n[        R                  " USS9nUR                  UL d   e[        R                  " USS9nUR                  ULd   eg )NrY   r   r   FcopyT)r   r#   r   r   _ndarray)r   datar+   s      r   	test_copy&TestDatetimeArrayConstructor.test_copy   sZ    xx	2**4e<||t###**4d;||4'''rP   rl   )smsusrk   c                     [         R                  " / SQSU S3S9n[        R                  " U5      nUR                  U:X  d   eUS   R                  U:X  d   eg )NrY   M8[]r   r   )r   r#   r   r   rl   )r   rl   rw   r+   s       r   test_numpy_datetime_unit5TestDatetimeArrayConstructor.test_numpy_datetime_unit   sR    xx	3tfA7**40xx41v{{d"""rP    N)__name__
__module____qualname____firstlineno__r   r-   r7   r   markparametrizer   r   r   r`   r_   rB   rN   rU   r[   ra   rg   rn   rq   rx   r   __static_attributes__r   rP   r   r   r      s    =
2- [[((NN	
 9F*) &N1M( [[V%<=# >#rP   r   c                   h    \ rS rSrS rS r\R                  R                  SSS/5      S 5       r	Sr
g	)
TestSequenceToDT64NS   c                     [         R                  " S/[        SS9S9n[        R                  " [
        SS9   [         R                  " U[        SS9S9  S S S 5        g ! , (       d  f       g = f)Nr;   rR   r=   r   zdata is already tz-awarer   rj   )r   r   r   r   r   r   )r   r+   s     r   test_tz_dtype_mismatch_raises2TestSequenceToDT64NS.test_tz_dtype_mismatch_raises   sQ    **HO|<
 ]]9,FG((Ou4MN HGGs   A
A+c                     [        SS9n[        R                  " S/US9n[        R                  " X!S9n[        R                  " X#5        g )NrR   r=   r;   r   )r   r   r   r%   assert_equal)r   r   r+   rL   s       r   test_tz_dtype_matches*TestSequenceToDT64NS.test_tz_dtype_matches   s<    <0**F85A--c?
$rP   orderFCc                    [         R                  " SSSS9n[        R                  " U[        S9R                  SS5      nUS:X  a  UR                  n[        R                  " X2R                  S9n[        R                  " UR                  5       UR                  S9R                  UR                  5      n[        R                  " XE5        g )	Nz
2016-01-01   z
US/Pacific)rG   r>   r   r!   r    r   )r   rI   r   r#   objectr)   Tr   r   r   ravelshaper%   rK   )r   r   dtir+   resrM   s         r   test_2dTestSequenceToDT64NS.test_2d   s    mmL!Ehhs&)11!Q7C<%%C**3ii@ //		399MUUII
 	&&s5rP   r   N)r   r   r   r   r   r   r   r   r   r   r   r   rP   r   r   r      s6    O% [[WsCj1
6 2
6rP   r   [    l )l    Fr Nl Fr ){   Ni)pa_unitpd_unitpa_tzpd_tzrw   rz   rj   r{   Europe/Berlinr|   rS   rk   rR   Asia/Kolkatac                    [         R                  " S5      nUR                  XS9nUR                  XFS9n[	        XS9nUR                  U5      n	[        R                  " USU  S3S9R                  USS	9n
[        R                  " X5        UR                  UR                  U/5      5      n	[        R                  " X5        g )
Npyarrowr=   )typerl   r>   r~   z, UTC]r   Frt   )r   importorskip	timestampr#   r   __from_arrow__r   r   r$   r%   assert_extension_array_equalchunked_array)r   r   r   r   rw   papa_typer+   r   rL   rM   s              r   7test_from_arrow_with_different_units_and_timezones_withr      s      
		Y	'Bll7l-G
((4(
&C3E!!#&F++D#gYf8MNUUE V H ##F5!!""2"2C5"9:F##F5rP   r   ))rz   rj   )r{   r   )r|   rS   )rk   r   )rk   rj   c                    [         R                  " S5      n/ nUR                  U5      n[        XS9nUR	                  U5      n[
        R                  " [        R                  " USU  S3S95      nUR                  US9n[        R                  " Xg5        UR	                  UR                  U/5      5      n[        R                  " Xg5        g )Nr   r   zdatetime64[r   r   r=   )r   r   r#   r   r   r   r   r   rT   r%   r   r   )rl   r>   r   rw   r+   r   rL   rM   s           r   test_from_arrow_from_emptyr      s     
		Y	'BD
((4.C-E!!#&F++BHHT;tfTUAV,WXH##r#*H##F5!!""2"2C5"9:F##F5rP   c                     [         R                  " S5      n SSS S[        S/nU R                  U5      n[	        SSS9nUR                  U5      n[        R                  " [        R                  " US	S
95      nUR                  S5      n[        R                  " XE5        UR                  U R                  U/5      5      n[        R                  " XE5        g )Nr   r   r   r   i2rk   rj   r   zdatetime64[ns]r   )r   r   r   r#   r   r   r   r   r   rT   r%   r   r   )r   rw   r+   r   rL   rM   s         r   test_from_arrow_from_integersr     s    			Y	'By$	4<D
((4.C%0E!!#&F++BHHTAQ,RSH##E*H##F5!!""2"2C5"9:F##F5rP   )numpyr   r   pandas._libsr   pandas.core.dtypes.dtypesr   pandasr   pandas._testing_testingr%   pandas.core.arraysr   r   r   EXTREME_VALUESFINE_TO_COARSE_SAFECOARSE_TO_FINE_SAFEr   r   r   r   r   r   rP   r   <module>r      s!      5   ,`# `#F6 6@ YdI|D? '  4	c5%0	tUO^<	t\5.9	t\>>B	sE5"56	tUO-@A	t\5*=>	dL.2EF	66& 	6	6 6rP   