
    Owgx                     `    d dl Zd dlZd dlZd dlmZ d dlmZ d dl	m
Z
 d dlmZ  G d d      Zy)    N)	Timedelta)nanops)TimedeltaArrayc            
          e Zd Zej                  j                  dg d      ej                  j                  dddg      d               Zej                  j                  dddg      d        Zd Zd	 Z	d
 Z
d Zej                  j                  d ed       ej                  d       ej                  dd       ej                  dd      g      d        Zd Zd Zd Zy)TestReductionsname)stdminmaxmedianmeanskipnaTFc                     t        j                  g       }|j                  } t        ||      |      }|t         j                  u sJ  t        ||      |      }|t         j                  u sJ y )Nr   )pdTimedeltaIndexarraygetattrNaT)selfr   r   tdiarrresults         e/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/arrays/timedeltas/test_reductions.pytest_reductions_emptyz$TestReductions.test_reductions_empty   sg     #ii#d#62#d#62    c                    t        j                  g       }|j                  }|j                  |      }t	        |t
              sJ |t        d      k(  sJ |j                  |      }t	        |t
              sJ |t        d      k(  sJ y )Nr   r   )r   r   r   sum
isinstancer   )r   r   r   r   r   s        r   test_sum_emptyzTestReductions.test_sum_empty   s    #ii'&),,,1%%%'&),,,1%%%r   c                 b   d| d}t        j                  g d|      }|j                         }t        d      }||k(  sJ |j	                         }t        d      }||k(  sJ |j                  d      }|t
        j                  u sJ |j	                  d      }|t
        j                  u sJ y )	Nzm8[]3hr$   r   2h5h4h)dtyper%   r&   Fr   )r   _from_sequencer
   r   r   r   r   )r   unitr(   r   r   expecteds         r   test_min_maxzTestReductions.test_min_max%   s    dV1++1
 T?!!!T?!!!&&r   c                    t        j                  g d      }|j                  }|j                  d      }t	        d      }t        |t              sJ ||k(  sJ |j                  d      }t        |t              sJ ||k(  sJ |j                  d      }|t         j                  u sJ |j                  d      }|t         j                  u sJ |j                  d      }|t         j                  u sJ |j                  d      }|t         j                  u sJ |j                  d	      }t        |t              sJ ||k(  sJ |j                  d	      }t        |t              sJ ||k(  sJ y )
Nr#   Tr      hoursF	   )	min_count   )r   r   r   r   r   r   r   r   r   r   r   r+   s        r   test_sumzTestReductions.test_sum9   sf    EFii%2&&),,,!!!%&),,,!!!&&1%1%1%&),,,!!!1%&),,,!!!r   c                    t        j                  g d      }|j                  }t        j                  |      }t        d      }t        |t
              sJ ||k(  sJ t        j                  |      }t        |t
              sJ ||k(  sJ y )N)r$   r$   r%   r&   r'   r.   r/   )r   r   r   npr   r   r   r4   s        r   
test_npsumzTestReductions.test_npsumZ   s|     >?ii2&&),,,!!!&),,,!!!r   c                    t        j                  d      j                  t         j                        j	                  d      j                  d      j                  dd      }d|d<   t        j                  |      }|j                  d	      }|t        j                  u sJ |j                  d
d      }t        j                  t        d      t        j                  g      j                  }t        j                  ||       |j                  dd      }t        j                  t        d      t        d      t        d      t        j                  g      j                  }t        j                  ||       y )N   zm8[s]zm8[ns]      Nat)r>   Fr   r   )axisr      )secondsr3      r1   )r7   arangeastypeint64viewreshaper   r)   r   r   r   r   r   _valuestmassert_timedelta_array_equal)r   r   tdar   r+   s        r   test_sum_2d_skipna_falsez'TestReductions.test_sum_2d_skipna_falseh   s&   iil!!"((+009@@JRRSTVWXF++C0&a.$$i&;RVV%DEMM
''9a.$$!$!$!$	
 ' 	 	''9r   addr   z
2021-01-01UTC)tzz
Asia/Tokyoc                 6   t        j                  g d      |z   }|j                  }|j                  d      }t	        d      }t        |t              sJ ||k(  sJ |j                  d      }t        |t              sJ ||k(  sJ t        |dd       Mt        j                  t        j                  |      d      }t        |t        j                        sJ ||k(  sJ |j                  d      }|t         j                  u sJ |j                  d      }|t         j                  u sJ t        |dd       ^t        j                  t        j                  |      d      }t        |t        j                        sJ t        j                  |      sJ y y )N)0hr'   r   r'   rQ   r%   Tr   r<   r/   rO   F)r   r   r   r	   r   r   r   r   nanstdr7   asarraytimedelta64r   isnat)r   rM   r   r   r   r+   s         r   test_stdzTestReductions.test_std   sh     EFLii%1%&),,,!!!%&),,,!!!3d#+]]2::c?4@Ffbnn555X%%%&&3d#+]]2::c?5AFfbnn55588F### ,r   c                    t        j                  g d      }|j                  }|j                  d      }t	        d      }t        |t              sJ ||k(  sJ |j                  d      }t        |t              sJ ||k(  sJ |j                  d      }|t         j                  u sJ |j                  d      }|t         j                  u sJ y )NrQ   r$   r   5h06mrQ   r%   Tr   r<   r/   F)r   r   r   r   r   r   r   r4   s        r   test_medianzTestReductions.test_median   s     HIii4(1%&),,,!!!4(&),,,!!!5)5)r   c                    t        j                  g d      }|j                  }t        |j	                         j
                  j                               }|j                         }||k(  sJ |j                  d      }|t         j                  u sJ |j	                         j                  d      }||k(  sJ |j                  d      }||k(  sJ y )NrX   Fr   r   r?   )r   r   _datar   dropna_ndarrayr   r   )r   r   r   r+   r   s        r   	test_meanzTestReductions.test_mean   s     HIii SZZ\22779:!!!'""%"0!!!q!!!!r   c                    t        j                  dd      }|j                  j                  dd      }|j	                  d      }|d   }t        j                  ||       |j	                  d      }|d d df   t        d	
      z   }t        j                  ||       |j	                  d       }|j	                         }||k(  sJ y )Nz14 days   )periods   r<   r   r\   r3   r@   r/   )r   timedelta_ranger]   rG   r   rI   rJ   r   )r   r   rK   r   r+   s        r   test_mean_2dzTestReductions.test_mean_2d   s      A6ii1%q!q6
''9q!q!t9yr22
''9t$88:!!!r   N)__name__
__module____qualname__pytestmarkparametrizer   r    r,   r5   r8   rL   r   r   	TimestamprV   rZ   r`   rf    r   r   r   r      s    [[V%LM[[Xe}5  6 N  [[Xe}5
& 6
& ("B":2 [[aLBLL&BLL%0BLL,7		
$$: &"$"r   r   )numpyr7   rj   pandasr   r   pandas._testing_testingrI   pandas.corer   pandas.core.arraysr   r   rn   r   r   <module>ru      s&          -O" O"r   