o
    ‘i%  ã                   @   sÜ   d dl Zd dlZd dlmZ d dlZd dlm	Z	 d dl
mZmZ d dlmZmZ d dlmZ dd„ Zedgd	d
dd„ ƒZedgƒdd„ ƒZedgd	d
dd„ ƒZdd„ Zedgƒdd„ ƒZdd„ Zedgddd„ ƒZdS )é    N)ÚPath)Ú
CustomCellÚTable)Úimage_comparisonÚcheck_figures_equal)ÚBboxc                  C   s   ddg} t j| d d S )NÚbÚr)ZcellColours)ÚpltÚtable)Z
cellcolors© r   új/var/www/html/eduruby.in/lip-sync/lip-sync-env/lib/python3.10/site-packages/matplotlib/tests/test_table.pyÚtest_non_square   s   r   ztable_zorder.pngT)Zremove_textc                  C   sÀ   ddgddgg} d}dd„ dD ƒ}g }t  t|ƒ¡}t| ƒD ]}||7 }| d	d„ |D ƒ¡ qt  d
dt j d¡}tj|t  	|¡ddd tj
|||ddd tj
|||ddd t g ¡ d S )NiR iØ¨ ivã  iÓÐ )ZFreezeZWindc                 S   s   g | ]}d | ‘qS )z%d yearr   ©Ú.0Úxr   r   r   Ú
<listcomp>   s    ztest_zorder.<locals>.<listcomp>)éd   é2   c                 S   s   g | ]}d |d  ‘qS )z%1.1fg     @@r   r   r   r   r   r      s    r   é   r   é   )ZlwÚzorderÚcenteréþÿÿÿ)ÚcellTextÚ	rowLabelsÚ	colLabelsÚlocr   zupper center)ÚnpZzerosÚlenÚreversedÚappendÚlinspaceÚpir
   ZplotÚcosr   Zyticks)Údatar   r   r   ZyoffÚrowÚtr   r   r   Útest_zorder   s2   ÿüür(   ztable_labels.pngc            	      C   sê   d} t  dd| ¡}tj |¡}dg|  g|  }t ¡ }| ddd¡}| d¡ |j||dd | ddd	¡}| d¡ |j||d
g|  dd | ddd¡}| d¡ |j||dd | ddd¡}| d¡ |j||d
g|  dd d S )Né   r   é   Ú1r   ÚoffÚbest)r   Ú
rowColoursr   r   ÚHeader)r   r.   r   r   )r   Ú
colColoursr   )r   r0   r   r   )	r   r"   r
   ÚcmZRdYlGnÚfigureÚadd_subplotÚaxisr   )	ÚdimÚcZcoloursr   ÚfigÚax1Úax2Úax3Úax4r   r   r   Útest_label_colours3   s>   
þ
ý
þ

ýr<   ztable_cell_manipulation.pngc                  C   s„   d} dgt | ƒ gd }dgt | ƒ }tjt | ƒdt | ƒd fd\}}t|| ƒD ]\}}|j||d|d	 | d
¡ q)t ¡  d S )N©Ú
horizontalÚverticalÚopenÚclosedÚTÚRÚBÚLr+   r   çš™™™™™¹?r   r*   )ZnrowsZfigsizer   )Ú	colWidthsr   r   Úedgesr,   )r   r
   ÚsubplotsÚzipr   r4   Ztight_layout)Úcellsr   rG   Ú_ZaxsÚaxÚcellr   r   r   Útest_diff_cell_tableX   s   "ürO   c                  C   s  d} t jt jt jt jt jft jt jt jt jt jft jt jt jt jt jft jt jt jt jt jft jt jt jt jt jft jt jt jt jt jft jt jt jt jt jft jt jt jt jt jff}t| |ƒD ]\}}td|ddd}tdd„ | ¡  ¡ D ƒƒ}||ks€J ‚qad S )Nr=   ©r   r   r*   )Úvisible_edgesÚwidthÚheightc                 s   s    | ]\}}|V  qd S )Nr   )r   rL   Úsr   r   r   Ú	<genexpr>y   s   € z"test_customcell.<locals>.<genexpr>)	r   ZMOVETOZLINETOZ	CLOSEPOLYrJ   r   ÚtupleÚget_pathÚiter_segments)ÚtypesÚcodesr'   r6   rN   Úcoder   r   r   Útest_customcellj   s   øýr\   ztable_auto_column.pngc            	      C   s  t  ¡ } |  ddd¡}| d¡ |jddgddggddgd	d
gdd}| d¡ | d¡ | g d¢¡ |  ddd¡}| d¡ |jddgddggddgd	d
gdd}| d¡ | d¡ | d¡ |  ddd¡}| d¡ |jddgddggddgd	d
gdd}| d¡ | d¡ | d¡ | d¡ | d¡ |  ddd¡}| d¡ |jddgddggddgd	d
gdd}| d¡ | d¡ tj	t
jdd | d¡ W d   ƒ n1 sÛw   Y  tj	t
jdd | dg¡ W d   ƒ d S 1 súw   Y  d S )Nr   r*   r,   zFit Textr   z-very long long text, Longer text than defaultÚArD   ZCol1ZCol2r   )r   r   r   r   Fé   )éÿÿÿÿr   r*   r)   r_   r   z('col' must be an int or sequence of ints)Úmatchz-101)r
   r2   r3   r4   r   Zauto_set_font_sizeZset_fontsizeZauto_set_column_widthÚpytestZwarnsÚmplZMatplotlibDeprecationWarning)	r7   r8   Ztb1r9   Ztb2r:   Ztb3r;   Ztb4r   r   r   Útest_auto_column}   s€   
ÿû


ÿû



ÿû





ÿû

ÿþÿ"þrc   c                  C   s€   t  ¡ \} }t|ƒ}| dddd¡}t|tƒsJ ‚||d u s!J ‚tdddd d}||d< |d |u s5J ‚| ¡  t  |¡ d S )Nr*   r   )r*   r   rP   )rQ   )r   r*   )r
   rI   r   Úadd_cellÚ
isinstancer   Ú
propertiesZsetp)r7   rM   r   rN   Zcell2r   r   r   Útest_table_cells½   s   rg   Zpng)Ú
extensionsc                 C   sr   ddgddgg}d}d}dd„ |D ƒ}|   ¡ }|j|||d	g d
¢d |  ¡ }|j|||d	t dddd¡d d S )Nr   r)   r   é   )ZFooZBar)ÚAdaZBobc                 S   s   g | ]	}d d„ |D ƒ‘qS )c                 S   s   g | ]}|› ‘qS r   r   r   r   r   r   r   ×   s    z.test_table_bbox.<locals>.<listcomp>.<listcomp>r   )r   r&   r   r   r   r   ×   s    z#test_table_bbox.<locals>.<listcomp>r   )rF   çš™™™™™É?çš™™™™™é?g333333ã?)r   r   r   r   ZbboxrF   rk   gÍÌÌÌÌÌì?rl   )rI   r   r   Zfrom_extents)Zfig_testZfig_refr%   Z
col_labelsZ
row_labelsZ	cell_textZax_listZax_bboxr   r   r   Útest_table_bboxÏ   s(   ÿü
ürm   )Únumpyr   ra   Zmatplotlib.pyplotZpyplotr
   Z
matplotlibrb   Zmatplotlib.pathr   Zmatplotlib.tabler   r   Zmatplotlib.testing.decoratorsr   r   Zmatplotlib.transformsr   r   r(   r<   rO   r\   rc   rg   rm   r   r   r   r   Ú<module>   s*    
 
$

?
