§
    �Ÿjh  ã                   ó>  — d Z ddlm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 ej                             dd	d
g¦  «        d„ ¦   «         Zed„ ¦   «         Z e	d	d
¦  «        ej                             dddg¦  «        d„ ¦   «         ¦   «         Zd„ Zeefd„¦   «         Zej                             deeg¦  «        ej                             dddg¦  «        d„ ¦   «         ¦   «         Ze
d„ ¦   «         Zd„ Zd„ Zd„ Ze
 e	d	d
¦  «        d„ ¦   «         ¦   «         Zd„ ZdS )zTests for IPython.utils.path.pyé    )Úcontextmanager)ÚpatchN)Ú
latextools)Úonlyif_cmds_existÚskipif_not_matplotlib©ÚFindCmdErrorÚcommandÚlatexÚdvipngc                 óª   ‡ — ˆ fd„}t          j        t          d|¦  «        5  t          j        dd¦  «        �J ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nc                 ó"   •— | ‰k    rt           ‚d S ©Nr   )Úargr
   s    €ún/var/www/finuniver-perm.ru/html/student/venv/lib/python3.11/site-packages/IPython/lib/tests/test_latextools.pyÚmock_find_cmdzGtest_check_latex_to_png_dvipng_fails_when_no_cmd.<locals>.mock_find_cmd   s   ø€ Ø�'Š>ˆ>ÝÐð ˆ>ó    Úfind_cmdÚwhateverT)r   Úobjectr   Úlatex_to_png_dvipng)r
   r   s   ` r   Ú0test_check_latex_to_png_dvipng_fails_when_no_cmdr      sÆ   ø€ ðð ð ð ð õ 
Œ•j *¨mÑ	<Ô	<ð Hð HÝÔ-¨j¸$Ñ?Ô?ÐGÐGÐGÐGðHð Hð Hñ Hô Hð Hð Hð Hð Hð Hð Hð Høøøð Hð Hð Hð Hð Hð Hs   ¢AÁAÁAc               /   ó   K  — d V — d S r   © )ÚargsÚkwargss     r   Úno_opr      s   è è € à	€E€E€E€E€Er   zs, wrap)z$$x^2$$F)úx^2Tc                 ó°   — d„ }t          j        | |¦  «         t          |¦  «        5  t          j        | |¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z@
    Test that latex_to_png_dvipng just runs without error.
    c                 ó   — | dk    sJ ‚d S ©Nú	breqn.styr   ©Úfilenames    r   Úmock_kpsewhichz5test_latex_to_png_dvipng_runs.<locals>.mock_kpsewhich'   ó   € Ø˜;Ò&Ð&Ð&Ð&Øˆtr   N)r   r   Úpatch_latextool)ÚsÚwrapr%   s      r   Útest_latex_to_png_dvipng_runsr*   !   s«   € ðð ð õ Ô" 1 dÑ+Ô+Ð+å	˜Ñ	(Ô	(ð 0ð 0ÝÔ& q¨$Ñ/Ô/Ð/ð0ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0ð 0ð 0s   ¨AÁAÁAc                 ó   — | dk    sJ ‚d S r!   r   r#   s    r   r%   r%   1   s   € Ø�{Ò"Ð"Ð"Ð"Øˆ4r   c              #   óz   K  — t          j        t          d| ¦  «        5  d V — d d d ¦  «         d S # 1 swxY w Y   d S )NÚ	kpsewhich)r   r   r   )Úmocks    r   r'   r'   5   s‡   è è € å	Œ•j +¨tÑ	4Ô	4ð ð Øˆˆˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   ž0°4·4ÚcontextÚs_wrap)ú$x^2$Fc                 óÖ   — 	 ddl }n%# t          $ r t          j        d¦  «         Y dS w xY w| \  }} |¦   «         5  t	          j        ||¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z=
    Test that latex_to_png_mpl just runs without error.
    r   Nz%This needs matplotlib to be available)Ú
matplotlibÚImportErrorÚpytestÚskipr   Úlatex_to_png_mpl)r0   r/   r3   r(   r)   s        r   Útest_latex_to_png_mpl_runsr8   :   s×   € ðØÐÐÐÐøÝð ð ð ÝŒÐ;Ñ<Ô<Ð<Øˆˆðøøøð �G€A€tØ	ˆ‰Œð -ð -ÝÔ# A tÑ,Ô,Ð,ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -ð -ð -s   ‚ ‡)¨)»AÁA"Á%A"c                  ó:   — t          j        d¦  «        } d| v sJ ‚d S )Nr1   zdata:image/png;base64,iVBOR)r   Úlatex_to_html)Úimgs    r   Útest_latex_to_htmlr<   I   s)   € å
Ô
" 7Ñ
+Ô
+€CØ(¨CÐ/Ð/Ð/Ð/Ð/Ð/r   c                  óº   — d„ } t          | ¦  «        5  d                     t          j        dd¦  «        ¦  «        dk    sJ ‚	 ddd¦  «         dS # 1 swxY w Y   dS )z)
    Test genelatex with wrap=False.
    c                 ó<   — J d                      | ¦  «        ¦   «         ‚)NFz0kpsewhich should not be called (called with {0}))Úformatr#   s    r   r%   z.test_genelatex_no_wrap.<locals>.mock_kpsewhichS   s(   € ð	=ð +ß+1ª6°(Ñ+;Ô+;ñ	=ô 	=ð 	=r   ú
z	body textFz¡\documentclass{article}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amssymb}
\usepackage{bm}
\pagestyle{empty}
\begin{document}
body text
\end{document}N©r'   Újoinr   Ú	genelatex©r%   s    r   Útest_genelatex_no_wraprE   O   sÀ   € ð=ð =ð =õ 
˜Ñ	(Ô	(ð 	ð 	Ø�yŠy�Ô-¨k¸5ÑAÔAÑBÔBð Gò ð ð ð ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	ó   “/AÁAÁAc                  óº   — d„ } t          | ¦  «        5  d                     t          j        dd¦  «        ¦  «        dk    sJ ‚	 ddd¦  «         dS # 1 swxY w Y   dS )zL
    Test genelatex with wrap=True for the case breqn.sty is installed.
    c                 ó   — | dk    sJ ‚dS )Nr"   zpath/to/breqn.styr   r#   s    r   r%   z6test_genelatex_wrap_with_breqn.<locals>.mock_kpsewhichg   s   € Ø˜;Ò&Ð&Ð&Ð&Ø"Ð"r   r@   r   TzÊ\documentclass{article}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amssymb}
\usepackage{bm}
\usepackage{breqn}
\pagestyle{empty}
\begin{document}
\begin{dmath*}
x^2
\end{dmath*}
\end{document}NrA   rD   s    r   Útest_genelatex_wrap_with_breqnrI   c   sÀ   € ð#ð #ð #õ 
˜Ñ	(Ô	(ð ð Ø�yŠy�Ô-¨e°TÑ:Ô:Ñ;Ô;ð @ò ð ð ð ð ðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð rF   c                  óº   — d„ } t          | ¦  «        5  d                     t          j        dd¦  «        ¦  «        dk    sJ ‚	 ddd¦  «         dS # 1 swxY w Y   dS )zP
    Test genelatex with wrap=True for the case breqn.sty is not installed.
    c                 ó   — | dk    sJ ‚d S r!   r   r#   s    r   r%   z9test_genelatex_wrap_without_breqn.<locals>.mock_kpsewhich~   r&   r   r@   r   TzŸ\documentclass{article}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amssymb}
\usepackage{bm}
\pagestyle{empty}
\begin{document}
$$x^2$$
\end{document}NrA   rD   s    r   Ú!test_genelatex_wrap_without_breqnrL   z   sÀ   € ðð ð õ 
˜Ñ	(Ô	(ð 	ð 	Ø�yŠy�Ô-¨e°TÑ:Ô:Ñ;Ô;ð @ò ð ð ð ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	rF   c                  ón  — d} t          j        | d¬¦  «        }t          j        | dd¬¦  «        }t          j        | d¦  «        }t          j        | dd¦  «        }||k    sJ ‚t          j        | d¦  «        }t          j        | dd¦  «        }||k    sJ ‚|||fv sJ ‚|||fv sJ ‚t          j        | dd¦  «        }||k    sJ ‚t          j        | dd¦  «        }||k    sJ ‚t          j        | dd¦  «        }	t          j        | dd	¦  «        }
|	|
k    sJ ‚t          j        | ddd
¦  «        }|	|k    sJ ‚dS )z/
    Test color settings for latex_to_png.
    r1   F)r)   z#000000)r)   ÚcolorÚBlackÚMaroonÚWhitez#FFFFFFg333333ó?N)r   Úlatex_to_pngr   r7   )Úlatex_stringÚdefault_valueÚdefault_hexblackÚdvipng_defaultÚdvipng_blackÚmpl_defaultÚ	mpl_blackÚdvipng_maroonÚ
mpl_maroonÚ	mpl_whiteÚmpl_hexwhiteÚmpl_white_scales               r   Útest_latex_to_png_colorr_   Ž   sš  € ð €LÝÔ+¨L¸uÐEÑEÔE€MÝ!Ô.¨|À%Ø5>ð@ñ @ô @ÐåÔ3°LÀ%ÑHÔH€NÝÔ1°,ÀÀwÑOÔO€LØ˜\Ò)Ð)Ð)Ð)ÝÔ-¨l¸EÑBÔB€KÝÔ+¨L¸%ÀÑIÔI€IØ˜)Ò#Ð#Ð#Ð#Ø˜\¨9Ð5Ð5Ð5Ð5Ð5Ø ¨iÐ8Ð8Ð8Ð8Ð8õ Ô2°<ÀØ3;ñ=ô =€Mð ˜=Ò(Ð(Ð(Ð(åÔ,¨\¸5À(ÑKÔK€JØ˜
Ò"Ð"Ð"Ð"ÝÔ+¨L¸%ÀÑIÔI€IÝÔ.¨|¸UÀIÑNÔN€LØ˜Ò$Ð$Ð$Ð$å Ô1°,ÀØ29¸3ñ@ô @€Oà˜Ò'Ð'Ð'Ð'Ð'Ð'r   c                  ó€   ‡ — dŠ t          j        t          ˆ fd„¦  «         t          j        t          ˆ fd„¦  «         dS )zM
    Test that invalid hex colors provided to dvipng gives an exception.
    r1   c                  ó2   •— t          j        ‰ dd¬¦  «        S )Nr   z#f00bar©ÚbackendrN   ©r   rR   ©rS   s   €r   ú<lambda>z6test_latex_to_png_invalid_hex_colors.<locals>.<lambda>¹   s    ø€ •
Ô'Ø (°)ð
ñ 
ô 
€ r   c                  ó2   •— t          j        ‰ dd¬¦  «        S )Nr   z#f00rb   rd   re   s   €r   rf   z6test_latex_to_png_invalid_hex_colors.<locals>.<lambda>¿   s   ø€ •
Ô'¨¸hÈfÐUÑUÔU€ r   N)r5   ÚraisesÚ
ValueErrorre   s   @r   Ú$test_latex_to_png_invalid_hex_colorsrj   ²   sd   ø€ ð €LÝ
„MÝð	
ð 	
ð 	
ð 	
ñô ð õ „MÝØUÐUÐUÐUñô ð ð ð r   )Ú__doc__Ú
contextlibr   Úunittest.mockr   r5   ÚIPython.libr   ÚIPython.testing.decoratorsr   r   ÚIPython.utils.processr	   ÚmarkÚparametrizer   r   r*   r%   r'   r8   r<   rE   rI   rL   r_   rj   r   r   r   ú<module>rs      sF  ðØ %Ð %ð &Ð %Ð %Ð %Ð %Ð %Ø Ð Ð Ð Ð Ð à €€€à "Ð "Ð "Ð "Ð "Ð "ðð ð ð ð ð ð ð ð /Ð .Ð .Ð .Ð .Ð .ð „×Ò˜ W¨hÐ$7Ñ8Ô8ðHð Hñ 9Ô8ðHð ð
ð 
ñ „ð
ð Ð�7˜HÑ%Ô%Ø„×Ò˜Ð%7¸Ð$GÑHÔHð0ð 0ñ IÔHñ &Ô%ð0ðð ð ð Ø'ð ð ð ñ „ðð „×Ò˜ U¨OÐ$<Ñ=Ô=Ø„×Ò˜Ð$4°mÐ#DÑEÔEð-ð -ñ FÔEñ >Ô=ð-ð ð0ð 0ñ Ôð0ð
ð ð ð(ð ð ð.ð ð ð( ØÐ�7˜HÑ%Ô%ð(ð (ñ &Ô%ñ Ôð(ðDð ð ð ð r   