o
    ¡:´aÉ  ã                   @   sð   d dl Zd dlZd dlZd dlmZ d dlmZm	Z	 d dl
mZ e d¡s+ej d¡Ze	dgddgd	d
dd„ ƒZeƒ dd„ ƒZeƒ dd„ ƒZdd„ Zej dg d¢¡dd„ ƒZej dddg¡dd„ ƒZej dddg¡dd„ ƒZd d!„ ZdS )"é    N)Ú_has_tex_package)Úcheck_figures_equalÚimage_comparisonTz$Missing TeX of Ghostscript or dvipngÚtest_usetexZpdfZpngÚmpl20)Zbaseline_imagesÚ
extensionsÚstylec                  C   sÈ   dt jd< t ¡ \} }ddtddddd	œ}|jd
i |¤Ž |jdi |¤Ž |jdi |¤Ž |jdi |¤Ž |jdi |¤Ž dd„ |jD ƒD ]}| |¡ qFdd„ |jD ƒD ]}| |¡ qV| 	¡  d S )NTútext.usetexZbaselineé   r   ÚkZnone)ZpadZ	edgecolorZ	facecolor)ZverticalalignmentÚsizeZbbox)çš™™™™™É?gffffffæ?zO\LaTeX\ $\left[\int\limits_e^{2e}\sqrt\frac{\log^3 x}{x}\,\mathrm{d}x \right\}$)r   ç333333Ó?Zlg)gš™™™™™Ù?r   z$\frac{1}{2}\pi$)g333333ã?r   z	$p^{3^A}$)gš™™™™™é?r   z	$p_{3_2}$c                 S   ó   h | ]}|  ¡ d  ’qS )r   ©Zget_position©Ú.0Út© r   ú>/usr/lib/python3/dist-packages/matplotlib/tests/test_usetex.pyÚ	<setcomp>"   ó    ztest_usetex.<locals>.<setcomp>c                 S   r   ©é   r   r   r   r   r   r   $   r   )
ÚmplÚrcParamsÚpltÚsubplotsÚdictÚtextZtextsZaxvlineZaxhlineZset_axis_off)ÚfigÚaxÚkwargsÚxÚyr   r   r   r      s"   
ÿúc                 C   s   dt jd< |  ddd¡ d S )NTr	   ç      à?z% a comment©r   r   r   ©Zfig_testZfig_refr   r   r   Ú
test_empty)   s   
r(   c                 C   s*   dt jd< |  ddd¡ | ddd¡ d S )NTr	   r%   z$-$u   âˆ’r&   r'   r   r   r   Útest_unicode_minus/   s   
r)   c                  C   s:   dt jd< t  ¡ } |  ¡  dd¡ dtjd< | j ¡  d S )NTzaxes.formatter.use_mathtextéÿÿÿÿr   r	   )r   r   ÚfigureZadd_subplotZset_xlimr   ÚcanvasÚdraw)r    r   r   r   Útest_mathdefault6   s
   

r.   Úfontsize)é   é
   é   c                 C   s¦   t j d¡ | t jd< i }t ¡ }dD ]1}| ¡  |D ]}|jddd|› ddd q|j 	¡  t
 |j ¡ ¡d d	kjd
d ¡ ||< qth | ¡ £ƒd
ksQJ ‚d S )Nr   z	font.size)r   )r*   )r*   r   r%   ú$T©Zusetex).r   éÿ   r   )Zaxis)r   r   Zuser   r   r+   Zclfr   r,   r-   ÚnpZarrayZbuffer_rgbaÚanyÚsumÚlenÚvalues)r/   Zheightsr    Zvalsr#   r   r   r   Útest_minus_no_descent@   s   

ÿÿr;   ÚpkgZxcolorZchemformulac                 C   sŠ   t | ƒst | › d¡ dtjd< t ¡ }| ddd¡}|j 	¡  d|  tjd< t ¡ }| ddd¡}|j 	¡  t
j | ¡ | ¡ ¡ d S )Nz is not availableTr	   r%   zSome text 0123456789z8\PassOptionsToPackage{dvipsnames}{xcolor}\usepackage{%s}útext.latex.preamble)r   ÚpytestÚskipr   r   r   r+   r   r,   r-   r6   ZtestingZassert_array_equalZget_window_extent)r<   r    r   Ztext2r   r   r   Útest_usetex_packagesT   s   

ÿ
ÿr@   Úpreamblez\usepackage[full]{textcomp}z\usepackage{underscore}c                 C   s2   | t jd< t  ¡ }|jddddd |j ¡  d S )Nr=   r%   zhello, worldTr4   )r   r   r+   r   r,   r-   )rA   r    r   r   r   Útest_latex_pkg_already_loadedg   s   
rB   c                  C   sh   dt jd< tdƒd d d… tdƒdœ} t  ¡ \}}|jdd| d | ¡  |jd	d	d
dd t  ¡  d S )NTr	   é   r*   )Úa_bÚcrE   rD   )Údatar   Zfoo_barr4   )r   r   Úranger   ZplotZlegendr   r-   )Zdfr    r!   r   r   r   Útest_usetex_with_underscorer   s   
rH   )Znumpyr6   r>   Z
matplotlibr   Zmatplotlib.testingr   Zmatplotlib.testing.decoratorsr   r   Zmatplotlib.pyplotZpyplotr   Zcheckdep_usetexZmarkr?   Z
pytestmarkr   r(   r)   r.   Zparametrizer;   r@   rB   rH   r   r   r   r   Ú<module>   s:    
ý





þ
