+
    xȇiF                        R t ^ RIt^ RIt^ RIHt ^ RIt^ RIH	t
 ^ RIHt ^ RIHt ]P                  R 4       t]P                  R 4       t]P                  R 4       t]P                  R 4       t]P                  R	 4       t]P                  R
 4       t]P                  R 4       t ! R R]P.                  4      t ! R R]P2                  4      tR# )aj  
This file contains a minimal set of tests for compliance with the extension
array interface test suite, and should contain no other tests.
The test suite for the full functionality of the array is located in
`pandas/tests/arrays/`.

The tests in this file are inherited from the BaseExtensionTests, and only
minimal tweaks should be applied to get the tests passing (by overwriting a
parent method).

Additional tests should either be added to one of the BaseExtensionTests
classes (if they are relevant for the extension interface for all dtypes), or
be added to the array-specific tests in `pandas/tests/arrays/`.

NDatetimeTZDtype)DatetimeArray)basec                      \        R RR7      # )nsz
US/Central)unittzr        t/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/extension/test_datetime.pydtyper      s    66r   c                 x    \         P                  ! \        P                  ! R ^
V P                  R7      V R7      pV# )2000)periodsr	   r   )r   _from_sequencepd
date_ranger	   )r   datas   & r   r   r   !   s/    ''
fbUXX6eD Kr   c                 b    \         P                  ! \        P                  ! R R.RR7      V R7      # )NaT
2000-01-01datetime64[ns]r   )r   r   nparrayr   s   &r   data_missingr   )   s+    ''
%&.>?u r   c                     \         P                  ! R 4      p\         P                  ! R4      p\         P                  ! R4      p\        P                  ! \        P
                  ! W#V.RR7      V R7      # )r   
2000-01-02
2000-01-03r   r   r   	Timestampr   r   r   r   )r   abcs   &   r   data_for_sortingr%   0   sT    
\"A
\"A
\"A''
!"235 r   c                     \         P                  ! R 4      p\         P                  ! R4      p\        P                  ! \        P
                  ! VRV.RR7      V R7      # )r   r   r   r   r   r    )r   r"   r#   s   &  r   data_missing_for_sortingr'   :   sH    
\"A
\"A''
!UA&67u r   c                    \         P                  ! R4      p\         P                  ! R4      p\         P                  ! R4      pRp\        P                  ! \        P
                  ! W"WDWW#.RR7      V R7      # )zS
Expected to be like [B, B, NA, NA, A, A, B, C]

Where A < B < C and NA is missing
r   r   r   r   r   r   r    )r   r"   r#   r$   nas   &    r   data_for_groupingr*   C   s`     	\"A
\"A
\"A	B''
!a+3CDE r   c                      R  p V # )c                 <    V \         P                  J ;'       d    WJ # N)r   r   )r"   r#   s   &&r   cmpna_cmp.<locals>.cmpU   s    BFF{%%qv%r   r
   )r.   s    r   na_cmpr0   S   s    & Jr   c                   "  a a ] tR t^\t oV 3R ltV3R lR ltV3R lR ltV3R lR lt]P                  P                  RR	R
.4      V 3R l4       tV 3R lt]P                  P                  RRR.4      R 4       tV3R lV 3R lltRtVtV ;t# )TestDatetimeArrayc                6   < VR9   d   R# \         SV `  WV4      # )__sub__N)r4   __rsub__)super_get_expected_exception)selfop_nameobjother	__class__s   &&&&r   r7   )TestDatetimeArray._get_expected_exception]   s!    --w.wUCCr   c                &   < V ^8  d   QhRS[ RS[/# )   r9   skipnastrbool)format__classdict__s   "r   __annotate__TestDatetimeArray.__annotate__b   s      # t r   c                ,    VR 8X  d   R# VP                   # )stdztimedelta64[ns]r   )r8   arrr9   r@   s   &&&&r   _get_expected_reduction_dtype/TestDatetimeArray._get_expected_reduction_dtypeb   s    e$yyr   c                &   < V ^8  d   QhRS[ RS[/# r?   r9   returnrA   )rD   rE   s   "r   rF   rG   g   s     / /3 /4 /r   c                    VR9   # )cummin)rQ   cummaxr
   )r8   serr9   s   &&&r   _supports_accumulation(TestDatetimeArray._supports_accumulationg   s    ...r   c                &   < V ^8  d   QhRS[ RS[/# rN   rA   )rD   rE   s   "r   rF   rG   j   s     P P P Pr   c                    VR9   # )min)rX   maxmedianmeanrI   anyallr
   )r8   r:   r9   s   &&&r   _supports_reduction%TestDatetimeArray._supports_reductionj   s    OOOr   r@   TFc                   < TpR V R2p\         P                  ! \        VR7      ;_uu_ 4        \        SV `  WV4       RRR4       R#   + '       g   i     R# ; i)z,datetime64 type does not support operation '')matchN)pytestraises	TypeErrorr6   test_reduce_series_boolean)r8   r   all_boolean_reductionsr@   methmsgr<   s   &&&&  r   rf   ,TestDatetimeArray.test_reduce_series_booleanm   sE    %<TF!D]]9C00G.tVT 1000s   A		A	c                H   < VP                  R 4      p\        SV `	  V4       R # r-   )
_with_freqr6   test_series_constructor)r8   r   r<   s   &&r   rm   )TestDatetimeArray.test_series_constructort   s    t$'-r   	na_actionNignorec                Z    VP                  R  VR7      p\        P                  ! W14       R# )c                     V # r-   r
   )xs   &r   <lambda>,TestDatetimeArray.test_map.<locals>.<lambda>{   s    Ar   )ro   N)maptmassert_extension_array_equal)r8   r   ro   results   &&& r   test_mapTestDatetimeArray.test_mapy   s"    +;
''5r   c                @   < V ^8  d   QhRS[ P                  RS[RS[/# )r?   rS   r9   r@   )r   SeriesrB   rC   )rD   rE   s   "r   rF   rG   ~   s&     > >		 >C > >r   c                j  < VR9   d   VP                  R4      p\        W4      p\        WB4      pV! VR7      pV! VR7      pVR9   d/   VP                  P                  p	\        P
                  ! WR7      pM\        P                  ! V4      p\        P                  ! Wx4       R# \        S
V `)  WV4      # )rZ   int64)r@   )r	   N)rZ   r[   rI   )r[   rZ   )astypegetattrr   r	   r   r!   	Timedeltarw   assert_almost_equalr6   check_reduce)r8   rS   r9   r@   altres_opexp_opry   expectedr	   r<   s   &&&&      r   r   TestDatetimeArray.check_reduce~   s    //**W%CS*FS*F6*FV,H,, YY\\<<8<<1""64 7'f==r   r
   )__name__
__module____qualname____firstlineno__r7   rK   rT   r^   rc   markparametrizerf   rm   rz   r   __static_attributes____classdictcell____classcell__)r<   rE   s   @@r   r2   r2   \   s     D
 
/ /P P [[Xe}5U 6U.
 [[[4*:;6 <6> > >r   r2   c                       ] tR t^tRtR# )Test2DCompatr
   N)r   r   r   r   r   r
   r   r   r   r      s    r   r   )__doc__numpyr   rc   pandas.core.dtypes.dtypesr   pandasr   pandas._testing_testingrw   pandas.core.arraysr   pandas.tests.extensionr   fixturer   r   r   r%   r'   r*   r0   ExtensionTestsr2   NDArrayBacked2DTestsr   r
   r   r   <module>r      s       5   , ' 7 7            4>++ 4>n	4,, 	r   