Ë
    ž…jâ&  ã                   óÎ   — d Z ddlZddlZddlZddlZddlmZ	 ej                  ej                  ej                  j                  ej                  j                  dœZ G d„ d«      Zy)zX
Tests for Series cumulative operations.

See also
--------
tests.frame.test_cumulative
é    N)ÚcumsumÚcumprodÚcumminÚcummaxc            &       óÚ  — e Zd Zej                  j                  dej                  ej                  g«      d„ «       Z	ej                  j                  dddg«      d„ «       Z
ej                  j                  d ej                  d«       ej                  d	«       ej                  d	«      j                  d
«      g«      ej                  j                  dddg d¢gddg d¢gddg d¢gddg d¢gg«      d„ «       «       Zd„ Zej                  j                  dddg«      d„ «       Zej                  j                  dg d¢g d¢g«      ej                  j                  dd„ d„ gddg¬«      ej                  j                  dej'                  «       «      d„ «       «       «       Zej                  j                  d d! ej*                  dd"ej,                  d"ge¬#«      gd$ ej*                  ddej,                  dg«      gd ej*                  ddej,                  dg«      gd ej*                  ddej,                  dg«      gg«      d%„ «       Zej                  j                  d&dd'gdd(gg«      d)„ «       Zej                  j                  d*dd+ej,                  d,d,d-ggdd+ej,                  ej,                  ej,                  ej,                  ggg«      ej                  j                  d&dd'gdd(gg«      d.„ «       «       Zd/„ Zej                  j                  d0g d!dg fg d!dg fg d1¢d!dg d2¢fg d1¢d!dg d2¢fd3ej8                  d4gd!dd3ej8                  d5gfd3ej8                  d4gd!dd3ej8                  ej8                  gfej8                  d3d4gd!dej8                  d3d5gfej8                  d3d4gd!dej8                  ej8                  ej8                  gfej8                  ej8                  ej8                  gd!dej8                  ej8                  ej8                  gfej8                  ej8                  ej8                  gd!dej8                  ej8                  ej8                  gfg ddg fg ddg fg d6¢ddg d7¢fg d6¢ddg d7¢fd4ej8                  d3gddd4ej8                  d3gfd4ej8                  d3gddd4ej8                  ej8                  gfej8                  d4d3gddej8                  d4d3gfej8                  d4d3gddej8                  ej8                  ej8                  gfej8                  ej8                  ej8                  gddej8                  ej8                  ej8                  gfej8                  ej8                  ej8                  gddej8                  ej8                  ej8                  gfg ddg fg ddg fg d1¢ddg d8¢fg d1¢ddg d8¢fd3ej8                  d4gddd3ej8                  d4gfd3ej8                  d4gddd3ej8                  ej8                  gfej8                  d3d4gddej8                  d3d4gfej8                  d3d4gddej8                  ej8                  ej8                  gfej8                  ej8                  ej8                  gddej8                  ej8                  ej8                  gfej8                  ej8                  ej8                  gddej8                  ej8                  ej8                  gfg«      d9„ «       Zd:„ Zy;)<ÚTestSeriesCumulativeOpsÚfuncc                 ó„  — t        j                   ||«      j                   |t        j                  |«      «      d¬«       |j                  «       }t        j                  |d d d…<    ||«      dd d…   } |t        j                  |j                  «       «      «      }t        j                  |j                  |d¬«       y )NT)Úcheck_dtypeé   é   F)ÚtmÚassert_numpy_array_equalÚvaluesÚnpÚarrayÚcopyÚnanÚdropna)ÚselfÚdatetime_seriesr	   ÚtsÚresultÚexpecteds         úd/root/aria/tools/markitdown-venv/lib/python3.12/site-packages/pandas/tests/series/test_cumulative.pyÚtest_datetime_seriesz,TestSeriesCumulativeOps.test_datetime_series   s•   € ä
×#Ñ#Ù�Ó!×(Ñ(Ù”—‘˜/Ó*Ó+Øõ	
ð ×!Ñ!Ó#ˆÜ—&‘&ˆ‰3ˆQˆ3‰á�b“˜!˜$˜Q˜$‘ˆÙœŸ™ §¡£Ó-Ó.ˆä
×#Ñ# F§M¡M°8ÈÖOó    Úmethodr   r   c                 óÀ  — t         |   } t        ||«      «       j                  } |t        j                  |«      «      }t        j                  ||«       |j                  «       }t        j                  |d d d…<    t        ||«      «       dd d…   } ||j                  «       «      }|j                  j                  d «      |_
        t        j                  ||«       y )Nr   r   )ÚmethodsÚgetattrr   r   r   r   r   r   r   r   ÚindexÚ
_with_freqÚassert_series_equal)r   r   r   Úufuncr   r   r   s          r   Útest_cummin_cummaxz*TestSeriesCumulativeOps.test_cummin_cummax+   s¶   € ä˜‘ˆà1”˜¨&Ó1Ó3×:Ñ:ˆÙœŸ™ /Ó2Ó3ˆä
×#Ñ# F¨HÔ5Ø×!Ñ!Ó#ˆÜ—&‘&ˆ‰3ˆQˆ3‰Ø$”˜˜VÓ$Ó& q t¨! tÑ,ˆÙ˜Ÿ™›Ó%ˆà—|‘|×.Ñ.¨tÓ4ˆŒÜ
×Ñ˜v xÕ0r   r   r   z
1999-12-31z
US/Pacificzmethod, skipna, exp_tdiT)ÚNaTú2 daysr'   r(   r'   ú3 days)r'   r(   r'   ú1 daysr'   r*   F)r'   r'   r'   r'   r'   r'   c                 ó  — t        j                  g d¢«      }t        j                  ||z   «      }t        j                  |«      }t        j                  ||z   «      } t        ||«      |¬«      }t	        j
                  ||«       y )N)r'   r(   r'   r*   r'   r)   ©Úskipna)ÚpdÚto_timedeltaÚSeriesr!   r   r$   )	r   r   r   r-   Úexp_tdiÚtdiÚserr   r   s	            r   Útest_cummin_cummax_datetimelikez7TestSeriesCumulativeOps.test_cummin_cummax_datetimelike;   sh   € ô: �o‰oÒQÓRˆÜ�i‰i˜˜b™Ó!ˆä—/‘/ 'Ó*ˆÜ—9‘9˜W r™\Ó*ˆØ%”˜˜fÓ%¨VÔ4ˆÜ
×Ñ˜x¨Õ0r   c           	      ó�  — t        j                  t        j                  d«      t        j                  d¬«      gt        j                  d¬«      t         j                  gt        j                  d¬«      t        j                  d¬«      gg«      }|j	                  «       }t        j                  t        j                  d«      t        j                  d¬«      gt        j                  d¬«      t         j                  gt        j                  dd¬	«      t        j                  dd¬	«      gg«      }t        j                  ||«       y )
Nr   r   ©Údaysr   iúÿÿÿ)Úhoursé   é   )r7   r8   )r.   Ú	DataFrameÚ	Timedeltar'   r   r   Úassert_frame_equal)r   Údfr   r   s       r   Útest_cumsum_datetimelikez0TestSeriesCumulativeOps.test_cumsum_datetimelike`   sÛ   € ä�\‰\ä—‘˜a“¤"§,¡,°AÔ"6Ð7Ü—‘ 1Ô%¤r§v¡vÐ.Ü—‘ BÔ'¬¯©¸BÔ)?Ð@ðó
ˆð —‘“ˆÜ—<‘<ä—‘˜a“¤"§,¡,°AÔ"6Ð7Ü—‘ 1Ô%¤r§v¡vÐ.Ü—‘ 1¨BÔ/´·±À1ÈBÔ1OÐPðó
ˆô 	×Ñ˜f hÕ/r   z	func, exp)r   ú2012-1-1)r   ú2012-1-2c                 ó~  — t        j                  t        j                  dd¬«      t         j                  t        j                  dd¬«      g«      } t	        ||«      d¬«      }t        j                  t        j                  dd¬«      t         j                  t         j                  g«      }t        j                  ||«        t	        ||«      d¬«      }t        j                  |d¬«      }t        j                  t        j                  dd¬«      t         j                  |g«      }t        j                  ||«       y )Nr@   ÚD)ÚfreqrA   Fr,   T)r.   r0   ÚPeriodr'   r!   r   r$   )r   r	   Úexpr3   r   r   s         r   Útest_cummin_cummax_periodz1TestSeriesCumulativeOps.test_cummin_cummax_periods   sÛ   € ô �i‰iÜ�Y‰Y�z¨Ô,¬b¯f©f´b·i±iÀ
ÐQTÔ6UÐVó
ˆð $”˜˜dÓ#¨5Ô1ˆÜ—9‘9œbŸi™i¨
¸Ô=¼r¿v¹vÄrÇvÁvÐNÓOˆÜ
×Ñ˜v xÔ0à#”˜˜dÓ#¨4Ô0ˆÜ�i‰i˜ #Ô&ˆÜ—9‘9œbŸi™i¨
¸Ô=¼r¿v¹vÀsÐKÓLˆÜ
×Ñ˜v xÕ0r   Úarg)FFFTTFF)FFFFFFFc                 ó   — | S ©N© ©Úxs    r   ú<lambda>z TestSeriesCumulativeOps.<lambda>�   s   € ˜1€ r   c                 ó   — |  S rJ   rK   rL   s    r   rN   z TestSeriesCumulativeOps.<lambda>�   s   € ¨¨€ r   ÚidentityÚinverse)Úidsc                 óè   —  |t        j                  |«      «      }t        |   } ||j                  «      }t        j                  |«      } t	        ||«      «       }t        j                  ||«       y rJ   )r.   r0   r    r   r!   r   r$   )	r   rH   r	   r   r3   r%   Úexp_valsr   r   s	            r   Útest_cummethods_boolz,TestSeriesCumulativeOps.test_cummethods_boolˆ   s\   € ñ ”2—9‘9˜S“>Ó"ˆÜ˜‘ˆá˜Ÿ™Ó$ˆÜ—9‘9˜XÓ&ˆà%”˜˜fÓ%Ó'ˆä
×Ñ˜v xÕ0r   zmethod, expectedr   r   ©Údtyper   c                 ó    — t        j                  ddt        j                  dg«      } t	        ||«      «       }t        j                  ||«       y )NFT)r.   r0   r   r   r!   r   r$   )r   r   r   r3   r   s        r   Ú$test_cummethods_bool_in_object_dtypez<TestSeriesCumulativeOps.test_cummethods_bool_in_object_dtype¡   s@   € ô �i‰i˜ ¤b§f¡f¨eÐ4Ó5ˆØ%”˜˜fÓ%Ó'ˆÜ
×Ñ˜v xÕ0r   zmethod, orderÚabcÚcbac                 ó  — t        j                  t        |«      d¬«      }t        j                  t        d«      |¬«      } t	        ||«      «       }t        j                  t        d«      |¬«      }t        j                  ||«       y )NT©ÚorderedÚababcabrV   Úabbbccc)r.   ÚCategoricalDtypeÚlistr0   r!   r   r$   )r   r   ÚorderÚcatr3   r   r   s          r   Ú)test_cummax_cummin_on_ordered_categoricalzATestSeriesCumulativeOps.test_cummax_cummin_on_ordered_categorical¯   so   € ô ×!Ñ!¤$ u£+°tÔ<ˆÜ�i‰iÜ�‹OØô
ˆð &”˜˜fÓ%Ó'ˆÜ—9‘9Ü�‹OØô
ˆô 	×Ñ˜v xÕ0r   z	skip, expÚaÚbÚcc                 ó  — t        j                  t        |«      d¬«      }t        j                  dt        j
                  dddg|¬«      } t        ||«      |¬«      }t        j                  ||¬«      }t        j                  ||«       y )NTr]   rf   rg   rh   rV   r,   )	r.   ra   rb   r0   r   r   r!   r   r$   )	r   ÚskiprF   r   rc   rd   r3   r   r   s	            r   Ú*test_cummax_cummin_ordered_categorical_nanzBTestSeriesCumulativeOps.test_cummax_cummin_ordered_categorical_nanÄ   s|   € ô  ×!Ñ!¤$ u£+°tÔ<ˆÜ�i‰iØ”"—&‘&˜#˜s CÐ(Øô
ˆð &”˜˜fÓ%¨TÔ2ˆÜ—9‘9ØØô
ˆô 	×ÑØØõ	
r   c                 ó  — t        j                  t        j                  d¬«      t        j                  d¬«      g«      }t        j                  t
        d¬«      5  |j                  «        d d d «       y # 1 sw Y   y xY w)Nr   r6   é   z#cumprod not supported for Timedelta©Úmatch)r.   r0   r<   ÚpytestÚraisesÚ	TypeErrorr   )r   r3   s     r   Útest_cumprod_timedeltaz.TestSeriesCumulativeOps.test_cumprod_timedeltaã   sT   € ä�i‰iœŸ™¨1Ô-¬r¯|©|ÀÔ/CÐDÓEˆÜ�]‰]œ9Ð,QÔRñ 	Ø�K‰KŒM÷	÷ 	ñ 	ús   ÁA5Á5A>zdata, op, skipna, expected_data)rM   ÚzÚy)rM   ÚxzÚxzyrM   ru   Úxy)ru   rt   rM   )ru   ru   rM   )rM   rt   rt   c                 ó¶   — t        j                  ||¬«      }t        ||«      }t        j                  ||¬«      } ||¬«      }	t        j                  |	|«       y )NrV   r,   )r.   r0   r!   r   r$   )
r   Ústring_dtype_no_objectÚdataÚopr-   Úexpected_datar3   r   r   r   s
             r   Útest_cum_methods_ea_stringsz3TestSeriesCumulativeOps.test_cum_methods_ea_stringsé   sM   € ôP �i‰i˜Ð$:Ô;ˆÜ˜˜bÓ!ˆÜ—9‘9˜]Ð2HÔIˆÙ˜vÔ&ˆÜ
×Ñ˜v xÕ0r   c                 ó  — t        j                  t        d«      |¬«      }t        j                  d|j
                  › d�«      }t        j                  t        |¬«      5  |j                  |¬«       d d d «       y # 1 sw Y   y xY w)NÚxyzrV   z-operation 'cumprod' not supported for dtype 'ú'rn   r,   )
r.   r0   rb   ÚreÚescaperW   rp   rq   rr   r   )r   Úpyarrow_string_dtyper-   r3   Úmsgs        r   Útest_cumprod_pyarrow_stringsz4TestSeriesCumulativeOps.test_cumprod_pyarrow_strings  se   € ä�i‰iœ˜U›Ð+?Ô@ˆÜ�i‰iÐGÈÏ	É	À{ÐRSÐTÓUˆÜ�]‰]œ9¨CÔ0ñ 	'Ø�K‰K˜vˆKÔ&÷	'÷ 	'ñ 	'ús   ÁA;Á;BN)Ú__name__Ú
__module__Ú__qualname__rp   ÚmarkÚparametrizer   r   r   r   r&   r.   r<   Ú	TimestampÚtz_localizer4   r?   rG   r    ÚkeysrU   r0   r   ÚobjectrY   re   rk   rs   ÚNAr~   r†   rK   r   r   r   r      sù  „ Ø‡[�[×Ñ˜V b§i¡i°·±Ð%<Ó=ñPó >ðPð  ‡[�[×Ñ˜X¨°(Ð';Ó<ñ1ó =ð1ð ‡[�[×ÑØàˆB�L‰L˜‹OØˆB�L‰L˜Ó&ØˆB�L‰L˜Ó&×2Ñ2°<Ó@ð	
óð ‡[�[×ÑØ!à�tÒPÐQØ�tÒPÐQàØÚ:ðð ØÚ:ðð	
óñ"
1ó#óð2
1ò0ð& ‡[�[×ÑØà"Ø"ð	
óñ1óð1ð ‡[�[×ÑØâ;Ú=ð	
óð ‡[�[×ÑØ‘™lÐ+°*¸iÐ1Hð ó ð ‡[�[×Ñ˜X w§|¡|£~Ó6ñ1ó 7óóð1ð ‡[�[×ÑØà�y�r—y‘y ! Q¨¯©°Ð!2¸&ÔAÐBØ˜	˜Ÿ	™	 5¨!¨R¯V©V°QÐ"7Ó8Ð9Ø�y�r—y‘y %¨°·±¸Ð!>Ó?Ð@Ø�y�r—y‘y %¨¨r¯v©v°tÐ!<Ó=Ð>ð		
óñ1óð1ð
 ‡[�[×ÑØà�uÐØ�uÐð	
óñ1óð1ð ‡[�[×ÑØà�C˜Ÿ™  c¨3Ð/Ð0Ø�S˜"Ÿ&™& "§&¡&¨"¯&©&°"·&±&Ð9Ð:ð	
óð ‡[�[×ÑØà�uÐØ�uÐð	
óñ
óóð
ò"ð ‡[�[×ÑØ)à�˜4 Ð$Ø�˜5 "Ð%Ú˜h¨Ò.@ÐAÚ˜h¨Ò/AÐBØ�2—5‘5˜#Ð ¨$°°b·e±e¸TÐ0BÐCØ�2—5‘5˜#Ð ¨%°#°r·u±u¸b¿e¹eÐ1DÐEØ�e‰e�S˜#Ð ¨$°·±¸¸TÐ0BÐCØ�e‰e�S˜#Ð ¨%°"·%±%¸¿¹ÀÇÁÐ1FÐGØ�e‰e�R—U‘U˜BŸE™EÐ" H¨d°R·U±U¸B¿E¹EÀ2Ç5Á5Ð4IÐJØ�e‰e�R—U‘U˜BŸE™EÐ" H¨e°b·e±e¸R¿U¹UÀBÇEÁEÐ5JÐKØ�˜4 Ð$Ø�˜5 "Ð%Ú˜h¨ªoÐ>Ú˜h¨ªÐ?Ø�2—5‘5˜#Ð ¨$°°b·e±e¸SÐ0AÐBØ�2—5‘5˜#Ð ¨%°#°r·u±u¸b¿e¹eÐ1DÐEØ�e‰e�S˜#Ð ¨$°·±¸¸SÐ0AÐBØ�e‰e�S˜#Ð ¨%°"·%±%¸¿¹ÀÇÁÐ1FÐGØ�e‰e�R—U‘U˜BŸE™EÐ" H¨d°R·U±U¸B¿E¹EÀ2Ç5Á5Ð4IÐJØ�e‰e�R—U‘U˜BŸE™EÐ" H¨e°b·e±e¸R¿U¹UÀBÇEÁEÐ5JÐKØ�˜4 Ð$Ø�˜5 "Ð%Ú˜h¨ªoÐ>Ú˜h¨ªÐ?Ø�2—5‘5˜#Ð ¨$°°b·e±e¸SÐ0AÐBØ�2—5‘5˜#Ð ¨%°#°r·u±u¸b¿e¹eÐ1DÐEØ�e‰e�S˜#Ð ¨$°·±¸¸SÐ0AÐBØ�e‰e�S˜#Ð ¨%°"·%±%¸¿¹ÀÇÁÐ1FÐGØ�e‰e�R—U‘U˜BŸE™EÐ" H¨d°R·U±U¸B¿E¹EÀ2Ç5Á5Ð4IÐJØ�e‰e�R—U‘U˜BŸE™EÐ" H¨e°b·e±e¸R¿U¹UÀBÇEÁEÐ5JÐKð=	
ó"ñF	1óG"ðF	1ó'r   r   )Ú__doc__r‚   Únumpyr   rp   Úpandasr.   Úpandas._testingÚ_testingr   r   r   ÚminimumÚ
accumulateÚmaximumr    r   rK   r   r   ú<module>r™      sX   ðñó 
ã Û ã Ý ð �i‰iØ�z‰zØ�j‰j×#Ñ#Ø�j‰j×#Ñ#ñ	€÷C'ò C'r   