ó
    {ñ:iÓ!  ã                   ó6  • S SK r S SKJr  S SKrS SKJr  S SKJ	r	  S SK
JrJr  S SKJrJr  S SKJr  S SKJr  S r\" S/S	S
9S 5       r\" S/5      S 5       r\" S/SS9S 5       rS r\" S/5      S 5       rS r\" S/S9S 5       r\" S/S9S 5       rS rS rg)é    N)ÚMock)ÚPath)Ú
CustomCellÚTable)Úimage_comparisonÚcheck_figures_equal)ÚBboxc                  ó4   • SS/n [         R                  " U S9  g )NÚbÚr)ÚcellColours)ÚpltÚtable)Ú
cellcolorss    Ú^/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/matplotlib/tests/test_table.pyÚtest_non_squarer      s   € à�s�€JÜ‡I‚I˜*Ó%ó    ztable_zorder.pngT)Úremove_textc            	      óH  • SS/SS//n SnS Vs/ s H  nSU-  PM
     nn/ n[         R                  " [        U5      5      n[        U 5       H/  nXV-  nUR	                  U Vs/ s H  nSUS	-  -  PM     sn5        M1     [         R
                  " S
S[         R                  -  S5      n[        R                  " U[         R                  " U5      SSS9  [        R                  " UUUSSS9  [        R                  " UUUSSS9  [        R                  " / 5        g s  snf s  snf )NiR iØ¨ ivã  iÓÐ )ÚFreezeÚWind)éd   é2   z%d yearz%1.1fg     @�@r   é   r   é   )ÚlwÚzorderÚcenteréþÿÿÿ)ÚcellTextÚ	rowLabelsÚ	colLabelsÚlocr   zupper center)ÚnpÚzerosÚlenÚreversedÚappendÚlinspaceÚpir   ÚplotÚcosr   Úyticks)Údatar"   Úxr!   r    ÚyoffÚrowÚts           r   Útest_zorderr3      s	  € à�FˆOØ�FˆOð€Dð #€IÙ(1Ó2ª	 1�˜Q”©	€IÐ2à€HÜ�8Š8”C˜	“NÓ#€DÜ˜Ž~ˆØ‰ˆØ�‰±tÓ<²t°!˜ A f¡HÔ-±tÑ<Ö=ñ ô 	�Š�A�qœŸ™‘w Ó$€AÜ‡H‚HˆQ”—’�q“	˜a¨Ò*ä‡I‚I�xØ!Ø!ØØò	ô ‡I‚I�xØ!Ø!Ø Øò	ô ‡J‚Jˆr…Nùò1 3ùò =s   �DÁ"D
ztable_labels.pngc                  óp  • Sn [         R                  " SSU 5      n[        R                  R	                  U5      nS/U -  /U -  n[        R
                  " 5       nUR                  SSS5      nUR                  S5        UR                  UUSS9  UR                  SSS	5      nUR                  S5        UR                  UUS
/U -  SS9  UR                  SSS5      nUR                  S5        UR                  UUSS9  UR                  SSS5      nUR                  S5        UR                  UUS
/U -  SS9  g )Né   r   é   Ú1r   ÚoffÚbest)r    Ú
rowColoursr#   r   ÚHeader)r    r:   r!   r#   )r    Ú
colColoursr#   )r    r<   r"   r#   )	r$   r)   r   ÚcmÚRdYlGnÚfigureÚadd_subplotÚaxisr   )	ÚdimÚcÚcoloursr    ÚfigÚax1Úax2Úax3Úax4s	            r   Útest_label_coloursrJ   5   s:  € à
€Cä
�Š�A�q˜#Ó€AÜ�f‰f�m‰m˜AÓ€GØ�˜‘ˆ}˜sÑ"€Hä
�*Š*‹,€Cà
�/‰/˜!˜Q Ó
"€CØ‡H�HˆU„OØ‡I�I�xØ Øð ñ ð �/‰/˜!˜Q Ó
"€CØ‡H�HˆU„OØ‡I�I�xØ Ø!˜
 SÑ(Øð ñ ð
 �/‰/˜!˜Q Ó
"€CØ‡H�HˆU„OØ‡I�I�xØ Øð ñ ð �/‰/˜!˜Q Ó
"€CØ‡H�HˆU„OØ‡I�I�xØ Ø!˜
 SÑ(Øð ò r   ztable_cell_manipulation.pngÚmpl20)Ústylec                 ó  • SnS/[        U5      -  /S-  nS/[        U5      -  n[        R                  " [        U5      S[        U5      S-   4SS9u  pE[        XQ5       H(  u  pgUR	                  UUS	US
9  UR                  S5        M*     g )N©Ú
horizontalÚverticalÚopenÚclosedÚTÚRÚBÚLr7   r   çš™™™™™¹?r   r6   Útight)ÚnrowsÚfigsizeÚlayoutr   )Ú	colWidthsr    r#   Úedgesr8   )r&   r   ÚsubplotsÚzipr   rA   )Útext_placeholdersÚcellsr    r\   Ú_ÚaxsÚaxÚcells           r   Útest_diff_cell_tablerf   Z   sŽ   € àL€EØ�œ˜E›
Ñ"Ð# aÑ'€HØ�œ˜E›
Ñ"€Iä�\Š\¤ E£
°Q¼¸E»
À1¹Ð4EÈgÑV�F€AÜ˜–O‰ˆØ
�‰Ø#Ø!ØØð	 	ñ 	ð 	�‰�Žò $r   c                  óv  • Sn [         R                  [         R                  [         R                  [         R                  [         R                  4[         R                  [         R                  [         R                  [         R                  [         R                  4[         R                  [         R                  [         R                  [         R                  [         R                  4[         R                  [         R                  [         R                  [         R                  [         R                  4[         R                  [         R                  [         R                  [         R                  [         R                  4[         R                  [         R                  [         R                  [         R                  [         R                  4[         R                  [         R                  [         R                  [         R                  [         R                  4[         R                  [         R                  [         R                  [         R                  [         R                  44n[	        X5       HF  u  p#[        SUSSS9n[        S UR                  5       R                  5        5       5      nX5:X  a  MF   e   g )NrN   ©r   r   r6   )Úvisible_edgesÚwidthÚheightc              3   ó*   #   • U  H	  u  pUv •  M     g 7f©N© )Ú.0rb   Úss      r   Ú	<genexpr>Ú"test_customcell.<locals>.<genexpr>z   s   é € ÐCÒ#B™4˜1•QÒ#Bùs   ‚)	r   ÚMOVETOÚLINETOÚ	CLOSEPOLYr_   r   ÚtupleÚget_pathÚiter_segments)ÚtypesÚcodesr2   rC   re   Úcodes         r   Útest_customcellr|   k   sj  € ØL€Eä	�‰”d—k‘k¤4§;¡;´·±¼T¿[¹[ÐIÜ	�‰”d—k‘k¤4§;¡;´·±¼T¿[¹[ÐIÜ	�‰”d—k‘k¤4§;¡;´·±¼T¿[¹[ÐIÜ	�‰”d—k‘k¤4§;¡;´·±¼T¿^¹^ÐLÜ	�‰”d—k‘k¤4§;¡;´·±¼T¿[¹[ÐIÜ	�‰”d—k‘k¤4§;¡;´·±¼T¿[¹[ÐIÜ	�‰”d—k‘k¤4§;¡;´·±¼T¿[¹[ÐIÜ	�‰”d—k‘k¤4§;¡;´·±¼T¿[¹[ÐIð	
€Eô �EÖ!‰ˆÜ˜&°¸À1ÑEˆÜÑC 4§=¡=£?×#@Ñ#@Ô#BÓCÓCˆØ�yÐˆyò "r   ztable_auto_column.pngc                  ód  • [         R                  " SS5      u  n u  pp4UR                  S5        UR                  SS/SS//SS/S	S
/SS9nUR	                  S5        UR                  S5        UR                  / SQ5        UR                  S5        UR                  SS/SS//SS/S	S
/SS9nUR	                  S5        UR                  S5        UR                  S5        UR                  S5        UR                  SS/SS//SS/S	S
/SS9nUR	                  S5        UR                  S5        UR                  S5        UR                  S5        UR                  S5        UR                  S5        UR                  SS/SS//SS/S	S
/SS9nUR	                  S5        UR                  S5        g )Nr   r6   r8   zFit Textr   z-very long long text, Longer text than defaultÚArU   ÚCol1ÚCol2r   )r    r!   r"   r#   Fé   )éÿÿÿÿr   r6   r‚   r   )r   r^   rA   r   Úauto_set_font_sizeÚset_fontsizeÚauto_set_column_width)	rE   rF   rG   rH   rI   Útb1Útb2Útb3Útb4s	            r   Útest_auto_columnrŠ   ~   sö  € ä #§¢¨Q°Ó 2Ñ€CÑ	ˆ#�Cð ‡H�HˆU„OØ
�)‰)Ø˜q�/ØBÀAÐFðHà˜�*Ø˜6Ð"Øð ð €Cð ×Ñ˜5Ô!Ø×Ñ�RÔØ×ÑšjÔ)ð ‡H�HˆU„OØ
�)‰)Ø˜q�/ØBÀAÐFðHà˜�*Ø˜6Ð"Øð ð €Cð ×Ñ˜5Ô!Ø×Ñ�RÔØ×Ñ˜jÔ)ð ‡H�HˆU„OØ
�)‰)Ø˜q�/ØBÀAÐFðHà˜�*Ø˜6Ð"Øð ð €Cð ×Ñ˜5Ô!Ø×Ñ�RÔØ×Ñ˜bÔ!Ø×Ñ˜aÔ Ø×Ñ˜aÔ ð ‡H�HˆU„OØ
�)‰)Ø˜q�/ØBÀAÐFðHà˜�*Ø˜6Ð"Øð ð €Cð ×Ñ˜5Ô!Ø×Ñ�RÕr   c                  ó0  • [         R                  " 5       u  p[        U5      nUR                  SSSS5      n[	        U[
        5      (       d   eX2S   L d   e[        SSSS S9nXBS'   US   UL d   eUR                  5         [         R                  " U5        g )Nr6   r   )r6   r   rh   )ri   )r   r6   )r   r^   r   Úadd_cellÚ
isinstancer   Ú
propertiesÚsetp)rE   rd   r   re   Úcell2s        r   Útest_table_cellsr‘   µ   s‘   € Ü�lŠl‹n�G€CÜ�"‹I€Eà�>‰>˜!˜Q  1Ó%€DÜ�dœJ×'Ñ'Ð'Ð'Ø˜‘;ÒÐÐä�v˜q !°4Ñ8€EØˆ$�KØ�‰;˜%ÒÐÐð 
×ÑÔÜ‡H‚HˆU…Or   Úpng)Ú
extensionsc                 ó8  • SS/SS//nSnSnU VVs/ s H  oU Vs/ s H  of PM     snPM     nnnU R                  5       nUR                  UUUS/ SQS	9  UR                  5       n	U	R                  UUUS[        R                  " S
SSS5      S	9  g s  snf s  snnf )Nr   r5   r   é   )ÚFooÚBar)ÚAdaÚBobr   )rW   çš™™™™™É?çš™™™™™é?g333333ã?)r    r!   r"   r#   ÚbboxrW   rš   gÍÌÌÌÌÌì?r›   )r^   r   r	   Úfrom_extents)
Úfig_testÚfig_refr.   Ú
col_labelsÚ
row_labelsr1   r/   Ú	cell_textÚax_listÚax_bboxs
             r   Útest_table_bboxr¥   Ç   s½   € à�ˆFØ�ˆFð€Dð  €JØ€Já26Ô7²$¨3 #Ó&¢#˜Q�C’&¡#Ô&±$€IÑ7à×ÑÓ!€GØ‡M�M˜9Ø&Ø&ØÚ+ð	 ñ ð ×ÑÓ €GØ‡M�M˜9Ø&Ø&ØÜ×(Ò(¨¨c°3¸Ó<ð	 ò ùò 'ùÓ7s   ’	B›B§BÂBc                 ó¨  •  " S S5      n[         R                  " 5       n[        S S9Ul        [        S S9Ul        [        S S9Ul        U[         R                  U'   U" S5      U" S5      /U" [        R                  " S	S
S5      5      U" S5      //nU R                  5       R                  U5        UR                  5       R                  SS/SS//5        U R                  R                  5         UR                  R                  5         [         R                  R                  U5        [         R                  R                  U5      (       a   eg )Nc                   ó    • \ rS rSrS rS rSrg)Ú!test_table_unit.<locals>.FakeUnitéæ   c                 ó   • g rm   rn   )ÚselfÚthings     r   Ú__init__Ú*test_table_unit.<locals>.FakeUnit.__init__ç   s   € Ør   c                 ó   • g)NÚHellorn   )r«   s    r   Ú__repr__Ú*test_table_unit.<locals>.FakeUnit.__repr__é   s   € Ør   rn   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r­   r±   Ú__static_attributes__rn   r   r   ÚFakeUnitr¨   æ   s   † ò	õ	r   r¸   c                 ó   • g)Nr   rn   )ÚvÚuÚas      r   Ú<lambda>Ú!test_table_unit.<locals>.<lambda>î   s   € ¸ar   )Úside_effectc                 ó   • g rm   rn   )rº   r¼   s     r   r½   r¾   ð   s   € Àr   c                 ó,   • [         R                  " 5       $ rm   )ÚmunitsÚAxisInfo)r»   r¼   s     r   r½   r¾   ñ   s   € ¼F¿OºOÔ<Mr   Úyellowé*   i°  é   r6   Tr°   )rÂ   ÚConversionInterfacer   ÚconvertÚdefault_unitsÚaxisinfoÚregistryÚdatetimer^   r   ÚcanvasÚdrawÚassert_not_calledÚpopÚget_converter)rž   rŸ   r¸   Úfake_convertorr.   s        r   Útest_table_unitrÓ   â   s  € ÷ñ ô ×/Ò/Ó1€Nä!Ñ.?Ñ@€NÔä#'Ñ4EÑ#F€NÔ Ü"Ñ/MÑN€NÔà .„F‡O�O�HÑá�hÓ¡¨"£Ð.Ù”h×'Ò'¨¨a°Ó3Ó4±h¸t³nÐEðG€Dð ×ÑÓ×Ñ˜dÔ#Ø×ÑÓ×Ñ˜w¨Ð0°7¸GÐ2DÐEÔFØ‡O�O×ÑÔØ×Ñ×,Ñ,Ô.ä
‡O�O×Ñ˜Ô!Ü�‰×,Ñ,¨X×6Ñ6Ð6Ð6Ð6r   c                 ó¨  • / SQ/ SQS.nU R                  U5      n[        R                  " 5       u  p4UR                  USS9n[	        UR                  5       5       Ht  u  nu  px[	        US:X  a  UR                  OUR                  5       HA  u  pšXVS:X  a  UOUS-   U	4   R                  5       R                  5       [        U
5      :X  a  MA   e   Mv     g )N)r~   rU   ÚC)r   éÈ   i,  )ÚLetterÚNumberr   )r#   r   r6   )
Ú	DataFramer   r^   r   Ú	enumerateÚiterrowsÚcolumnsÚvaluesÚget_textÚstr)Úpdr.   ÚdfrE   rd   r   r   Úindexr1   rC   Úcols              r   Útest_table_dataframerä     sµ   € ò "Ú!ñ€Dð
 
�‰�dÓ	€BÜ�lŠl‹n�G€CØ�H‰H�R˜XˆHÐ&€Eä$ R§[¡[£]Ö3‰ˆ‰<ˆEÜ¨a°1«f §
¢
¸#¿*¹*ÖE‰FˆAØ 1›f™¨!¨A©#¨qÐ0Ñ1×:Ñ:Ó<×EÑEÓGÌ3ÈsË8ÕSÐSÐSó Fò 4r   c                  óü   • SS/SS//n [         R                  " 5       u  pSnUR                  U SUS9nUS   R                  5       nXS:X  d   S	U S
U 35       eUS   R                  5       nXS:X  d   S	U S
U 35       eg )Nr¼   r6   r   r   é   Útop)r    r#   Úfontsizerh   zActual:z,got:)r6   r6   )r   r^   r   Úget_fontsize)Ú	tableDatarE   rd   Útest_fontsizer2   Úcell_fontsizes         r   Útest_table_fontsizerí     sš   € à�q�˜C ˜8Ð$€IÜ�lŠl‹n�G€CØ€MØ
�‰˜)¨¸ˆÐG€AØ�f‘I×*Ñ*Ó,€MØÓ)ÐX¨W°]°OÀ5ÈÈÐ+XÓXÐ)Ø�f‘I×*Ñ*Ó,€MØÓ)ÐX¨W°]°OÀ5ÈÈÐ+XÓXÑ)r   ) rÌ   Úunittest.mockr   Únumpyr$   Úmatplotlib.pyplotÚpyplotr   Úmatplotlib.pathr   Úmatplotlib.tabler   r   Úmatplotlib.testing.decoratorsr   r   Úmatplotlib.transformsr	   Úmatplotlib.unitsÚunitsrÂ   r   r3   rJ   rf   r|   rŠ   r‘   r¥   rÓ   rä   rí   rn   r   r   Ú<module>rø      sí   ðÛ Ý ã å Ý  ß .ß OÝ &Ý !ò&ñ Ð%Ð&°DÑ9ñó :ðñ@ Ð%Ð&Ó'ñ!ó (ð!ñH Ð0Ð1¸ÑAñó Bðò ñ& Ð*Ð+Ó,ñ3ó -ð3òlñ$   Ñ(ñó )ðñ4   Ñ(ñ7ó )ð7ò<Tó"	Yr   