U
    \	¸a­  ã                   @   s~   d Z 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Z	ddlm
Z
 e e¡Zdd„ Zdd	„ Zd
d„ Zdd„ Zdd„ ZdS )z
Helper functions for testing.
é    N)ÚPath)ÚTemporaryDirectory)Ú_apic                   C   s"   dt jd< dt jd< dt jd< d S )NzDejaVu Sanszfont.familyÚnoneztext.hintingé   ztext.hinting_factor©ÚmplZrcParams© r	   r	   ú?/tmp/pip-unpacked-wheel-wjyw_3jo/matplotlib/testing/__init__.pyÚset_font_settings_for_testing   s    

r   c                   C   s   dt jd< d S )NÚ
matplotlibzsvg.hashsaltr   r	   r	   r	   r
   Úset_reproducibility_for_testing   s    r   c                   C   s”   zt  t jd¡ W nJ t jk
r\   zt  t jd¡ W n  t jk
rV   t d¡ Y nX Y nX t d¡ t 	¡  t 
¡  W 5 Q R X tƒ  tƒ  d S )Nzen_US.UTF-8zEnglish_United States.1252zPCould not set locale to English/United States. Some date-related tests may fail.ZAgg)ÚlocaleÚ	setlocaleÚLC_ALLÚErrorÚ_logÚwarningr   Zuser   Z'suppress_matplotlib_deprecation_warningZ
rcdefaultsr   r   r	   r	   r	   r
   Úsetup   s    ÿ

r   c              
   C   s€   t ƒ p}t|dƒ}| d¡ z$tj| dt|ƒg|tjtjd W n& ttjfk
rf   Y W 5 Q R £ dS X W 5 Q R £ dS Q R X dS )z
    Check if a given TeX system + pgf is available

    Parameters
    ----------
    texsystem : str
        The executable name to check
    ztest.texzÁ
            \documentclass{minimal}
            \usepackage{pgf}
            \begin{document}
            \typeout{pgfversion=\pgfversion}
            \makeatletter
            \@@end
        z-halt-on-error)ÚcwdÚstdoutÚstderrFTN)	r   r   Ú
write_textÚ
subprocessÚ
check_callÚstrÚDEVNULLÚOSErrorÚCalledProcessError)Z	texsystemZtmpdirZtex_pathr	   r	   r
   Ú_check_for_pgf4   s    	

  þ
r   c                 C   s   t tj | › d¡ƒS )Nz.sty)Úboolr   ZdvireadZfind_tex_file)Úpackager	   r	   r
   Ú_has_tex_packageP   s    r"   )Ú__doc__r   Úloggingr   Úpathlibr   Útempfiler   r   r   r   Ú	getLoggerÚ__name__r   r   r   r   r   r"   r	   r	   r	   r
   Ú<module>   s   
