rL i_ UddlmZddlZddlmZddlZddlZddlmZ ddl m Z ddl Z ddlmZddlZddlZddlZddlmZmZddlmZddlmZmZeej:Zgd Zd gZ gd Z!d Z"d Z#dZ$dZ%dZ&e"e#e$e%e&gZ'ge'fdge'fdge'fdge'fdge"e#e$gfddddge"e#e$dgfddge"e#e$dgfddge"e#e$dgfdge#gfdge#e$gfddge#e$gfdge#e$gfdge"e#e$gfddge"e#e$gfddge"e#e$gfdge'fgZ(de)d<gZ*de)d <e(D]p\Z+Z,e+e*j[dge,zd!j]d"j]e+d#gd$e+Dd%d&e+Dd'Z/e,D]Z0e*jce/e0zrejdd(Z3ejhjkd)e6ee7e8e*ejhjkd+gd,ejhjkd-d.gd/0edejrd1vrd2nd3d4Z:ejhjkd)e6e e7e8e *ejhjkd+d5d6gejhjkd-d7gd/0edd8gd9ddddd:i;d<Z;ejhjkd)e6e!e7e8e!*ejhjkd+d6gejhjkd-d=gd/0edd>g?d@Zgejrd1vrd2ndBdCZ=ed>gDdEZ>dFZ?ejhjejdGk(dHIejhjkdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\ejd]fd^d_d`dadbdcdddedfggdg*dhZCdiZDdjZEed>gDdkZFed>gDdlZGed>gDdmZHed>gDdnZIdoZJdpZKejhjkdqd5gdrfdsgdtfgduZLdvZMedwgdxdyizd{ZNd|ZOd}ZPd~ZQdZRed>gDdZSy)) annotationsN)Path) ElementTree)Any)parse)check_figures_equalimage_comparison)mathtext _mathtext)Tz$a+b+\dot s+\dot{s}+\ldots$z$$x\hspace{-0.2}\doteq\hspace{-0.2}y$z\$100.00 $\alpha \_$z$\frac{\$100.00}{y}$z$x y$z$x+y\ x=y\ x M \: M \; M \ M \enspace M \quad M \qquad M \! M$z<$\Cap$ $\Cup$ $\leftharpoonup$ $\barwedge$ $\rightharpoonup$zv$\hspace{-0.2}\dotplus\hspace{-0.2}$ $\hspace{-0.2}\doteq\hspace{-0.2}$ $\hspace{-0.2}\doteqdot\hspace{-0.2}$ $\ddots$z1$xyz^kx_kx^py^{p-2} d_i^jb_jc_kd x^j_i E^0 E^0_u$zW${xyz}^k{x}_{k}{x}^{p}{y}^{p-2} {d}_{i}^{j}{b}_{j}{c}_{k}{d} {x}^{j}_{i}{E}^{0}{E}^0_u$ze${\int}_x^x x\oint_x^x x\int_{X}^{X}x\int_x x \int^x x \int_{x} x\int^{x}{\int}_{x} x{\int}^{x}_{x}x$ztesting$^{123}$Nz4$6-2$; $-2$; $ -2$; ${-2}$; ${ -2}$; $20^{+3}_{-2}$z%$\overline{\omega}^x \frac{1}{2}_0^x$z4$,$ $.$ $1{,}234{, }567{ , }890$ and $1,234,567,890$z$\left(X\right)_{a}^{b}$z$\dfrac{\$100.00}{y}$z$a=-b-c$z$-$-) z$\sqrt[ab]{123}$zy$x \overset{f}{\rightarrow} \overset{f}{x} \underset{xx}{ff} \overset{xx}{ff} \underset{f}{x} \underset{f}{\leftarrow} x$zc$\sum x\quad\sum^nx\quad\sum_nx\quad\sum_n^nx\quad\prod x\quad\prod^nx\quad\prod_nx\quad\prod_n^nx$z&$1.$ $2.$ $19680801.$ $a.$ $b.$ $mpl.$z$\text{text}_{\text{sub}}^{\text{sup}} + \text{\$foo\$} + \frac{\text{num}}{\mathbf{\text{den}}}\text{with space, curly brackets \{\}, and dash -}$zo$\boldsymbol{abcde} \boldsymbol{+} \boldsymbol{\Gamma + \Omega} \boldsymbol{01234} \boldsymbol{\alpha * \beta}$z$\left\lbrace\frac{\left\lbrack A^b_c\right\rbrace}{\left\leftbrace D^e_f \right\rbrack}\right\rightbrace\ \left\leftparen\max_{x} \left\lgroup \frac{A}{B}\right\rgroup \right\rightparen$z$\left( a\middle. b \right)$ $\left( \frac{a}{b} \middle\vert x_i \in P^S \right)$ $\left[ 1 - \middle| a\middle| + \left( x - \left\lfloor \dfrac{a}{b}\right\rfloor \right) \right]$z$\sum_{\substack{k = 1\\ k \neq \lfloor n/2\rfloor}}^{n}P(i,j) \sum_{\substack{i \neq 0\\ -1 \leq i \leq 3\\ 1 \leq j \leq 5}} F^i(x,y) \sum_{\substack{\left \lfloor \frac{n}{2} \right\rfloor}} F(n)$ 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzzE\Gamma \Delta \Theta \Lambda \Xi \Pi \Sigma \Upsilon \Phi \Psi \Omegaz\alpha \beta \gamma \delta \epsilon \zeta \eta \theta \iota \lambda \mu \nu \xi \pi \kappa \rho \sigma \tau \upsilon \phi \chi \psimathrmmathbfmathitmathtt)Nmathbbz\Gamma \Pi \Sigma \gamma \pimathcalmathfrakmathscrmathsfmathbfitz"list[tuple[None | list[str], Any]]font_test_specszlist[None | str] font_tests z $c#&K|] }d|z yw)z\%s{N.0fonts d/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/matplotlib/tests/test_mathtext.py r&s /gn /sz%sc# K|]}dyw)}Nr!r"s r%r&r&s $dc $s $cV|tjdd|j||fzgS)Nztest has been removedz %s_%s_%02d)pytestskipparam)requestfontsetindextexts r%baseline_imagesr2s- | +, GMM7E: : ;;z index, text)idsr/)cmstixstixsans dejavusans dejavuserifr2r T)indirect)ppc64les390xgI +?)r2tolc|tjd<tjd}|j dd|ddyNmathtext.fontsetg@g?figsize?centerhorizontalalignmentverticalalignmentmplrcParamspltfigurer1r2r/r0r1figs r%test_mathtext_renderingrP>(/CLL#$ **\ *CHHS#t!)X Gr3r5r8 mathtext0svgmetadata)CreatorDateFormatType)r2 extensions savefig_kwargc|tjd<dtjd<tjd}|jj d|j dd|d d y) Nr@none svg.fonttyperArBF)visiblerDrErF)rJrKrLrMpatchsetr1rNs r%!test_mathtext_rendering_svgastextras^(/CLL#$#)CLL **\ *CIIMM%M HHS#t!)X Gr3 mathtext1png)r2rYc^tjd}|jdd||ddy)NrArBrDrE)math_fontfamilyrGrHrLrMr1rNs r%#test_mathtext_rendering_lightweightrgs1 **\ *CHHS#tW!)X Gr3mathfont)r2rYr=c|tjd<tjd}|j dd|ddyr?rIrNs r%test_mathfont_renderingrjrQr3)rYc tjjDcgc]}t|dk(s|}}g}|D]!fdD\}|j |#|j ddddj d|Dzdz|j ddddj d|Dzdzycc}w) Nc3XK|]!}t|dkDs|k(s|#yw)rlN)len)r#lacc_mapss r%r&z*test_short_long_accents..s* LACFQJ71:3Ka Ls * **rrDr)rc3(K|] }d|d yw)\aNr!)r#rqs r%r&z*test_short_long_accents..s&EQ!A3ay&Ec3(K|] }d|d yw)rsz aNr!)r#ros r%r&z*test_short_long_accents..sIA!BZIru)r Parser _accent_maprnappendr1join)fig_testfig_refrq short_accscorresponding_long_accsrorps ` @r%test_short_long_accentsr s**G$4A! !4J4  * L L&&q)* MM!Rrww&E*&EEEKL LL 2sRWWI1HIIICOQ 5s CCctjjd}tjj |}|j d}|J|ddk(sJy)N DejaVu Sansheadversion)rlr)rJ font_managerfindfontft2fontFT2Fontget_sfnt_table)fontpathr$tables r% test_fontinfors[((7H ;;  x (D    'E     v %% %r3)rrlrz-Error messages are incorrect for this version)reasonz math, msg)z $\hspace{}$Expected \hspace{space})z$\hspace{foo}$r)z$\sinx$zUnknown symbol: \sinx)z$\dotx$zUnknown symbol: \dotx)z$\frac$Expected \frac{num}{den})z $\frac{}{}$r)z$\binom$Expected \binom{num}{den})z $\binom{}{}$r)z $\genfrac$3\ 4$z $1\/2\:3~4$r1r{r|s r% test_spacesrxs" MM"b/* LLR(r3c|jddd|jddd|jddd|jddd|jdd d |jdd d |jdd d|jddd|jddd|jddd|jddd|jddd|jddd|jdd d|jdd d|jdd d|jddd|jdddy)N皙?z$\log 6$皙?z $\log(6)$333333?z $\arcsin 6$皙?z $\arcsin|6|$rDz$\operatorname{op} 6$g333333?z$\operatorname{op}[6]$ffffff?z$\cos^2$g?z$\log_2$g?z $\sin^2 \cos$z$\mathrm{log\,}6$z$\mathrm{log}(6)$z$\mathrm{arcsin\,}6$z$\mathrm{arcsin}|6|$z$\mathrm{op\,}6$z$\mathrm{op}[6]$z$\mathrm{cos}^2$z$\mathrm{log}_2$z$\mathrm{sin}^2 \mathrm{\,cos}$rrs r%test_operator_spacer~s. MM#sK( MM#sL) MM#sN+ MM#sO, MM#s45 MM#s56 MM#sK( MM#sK( MM#s,- LLc/0 LLc/0 LLc23 LLc23 LLc./ LLc./ LLc./ LLc./ LLc=>r3cX|jdddd|jddddy)NrDz$\left)\right($r8)rez$)($rrs r%test_inverted_delimitersrs+ MM"b,lMK LLR,L?r3c|jdddtjjddtj dtj d}|jddd|zy)Nrz$\dfrac{2x}{3y}$z font.sizez savefig.dpi)fontsizedpiz$\genfrac{}{}{%f}{0}{2x}{3y}$)r1r TruetypeFontsget_underline_thicknessrJrK)r{r| thicknesss r%test_genfrac_displaystylersc MM#s/0''?? dS\\+6 LL '@)I LLc;iGHr3c8dD]}|tjd<y)N)r5r6r7Nonemathtext.fallback)rJrKfallbacks r%test_mathtext_fallback_validrs 65,4 ()5r3cdD]9}tjtd5|tjd<ddd;y#1swYFxYw)N)abcrznot a valid fallback font namerr)r+rrrJrKrs r%test_mathtext_fallback_invalidrsI9 ]]:-M N 908CLL, - 9 99 9 9s AA zfallback,fontlist)rmpltest STIXGeneralcmr10rr6)rrrrrctjjjt t t jjdz dtjd<dtjd<dtjd<dtjd <d tjd <d tjd <|tjd<d}tj}tj\}}|jdd|dd|j|dt!j"|j%j'd}|Dcgc]4}t)j*d|j,dj/d6}}||k(s Jd|d|tjjj0j3ycc}w)Nz mpltest.ttfr\r]customr@rz mathtext.rmzmpltest:italicz mathtext.itz mpltest:boldz mathtext.bfzmpltest:italic:boldz mathtext.bfitrza$A\AA\breve\gimel$rD(rE)rharS)formatz,.//{http://www.w3.org/2000/svg}tspan[@style]zfont-family: '([\w ]+)'stylerlz Expected z, got )rJr fontManageraddfontrr__file__resolveparentrKioBytesIOrLsubplotsr1savefigET fromstringgetvaluefindallrsearchattribgroupttflistpop) rfontlisttest_strbuffrOaxtspanstspan char_fontss r%test_mathtext_fallbackrs   (( DN " " $ + +m ;<>#)CLL '/CLL#$"+CLL"2CLL"0CLL$9CLL!(0CLL$%%H ::1 q3wH -y1}=> r3cP|jddd|jdddy)Nrrz%$\boldsymbol{\mathrm{abc0123\alpha}}$z$\mathrm{abc0123\alpha}$rrs r%test_boldsymbolr-s$ MM#sDE LLc67r3)T __future__rrpathlibrplatformr xml.etreerrtypingrnumpyrpackaging.versionr parse_version pyparsingr+ matplotlibrJmatplotlib.testing.decoratorsrr matplotlib.pyplotpyplotrLr r __version__pyparsing_version math_testssvgastext_math_testslightweight_math_testsdigits uppercase lowercase uppergreek lowergreekallr__annotations__rfontscharsextendrzwrapperfont_setryfixturer2mark parametrizerrrnmachinerPrargrjrrxfailreleasecompilerrrrrrrrrrrrr rrrrr!r3r%rCs+"  '4 O*!)"7"78f T    ( (  " y)Z<IZZZZ&)Y/0   Z&)Y134FIy;=>FIy;=>[9+\Iy)* i34[9i()Z&)Y/0FIy9:FIy9:\3-732 " !# 2LE5 }4&5.)'' HHUO  0 /    %e $      2H   g0 1 2 2 << 9Z(eC O.DF FH*ZL4H$/x//15IIeqRGRIHFG 2F(G"3';#<=?T<$89*[MDIeWt EFGG GJ:?G 2H(I"3'=#>?A\N3*[MDI$E7;G<J4A G 9Z(eC O.DF FH*ZL4H$E7/x//15IIeqRGRIHFG( Q) Q&$,, 9IK47..1537 J J.057.24 jbjj!ABC37?A,+)-&? B G@BC@KF- ())) (?)?,(@)@ (I)I5 9  MN UVXY/ Y/4B #>"?!& -.-. !!2!8(8)8r3