Ë
    íÍ:jß-  ã                   óP  — d Z ddlZddlZddlmZ ddlZddlZddlmZ ddl	Z	 e	j                  dd¬«        ee«      j                  dz  Zdd	„Zd
„ Zd„ Ze	j"                  j%                  dddg«      d„ «       Ze	j"                  j%                  dddg«      d„ «       Zd„ Zd„ Zd„ Zy)z2Tests for tinypages build using sphinx extensions.é    N)ÚPath)Úsubprocess_run_for_testingÚsphinxz4.1.3)Ú
minversionzdata/tinypagesc                 ó¢  — |€g n|}t         j                  dddddt        |«      t        | «      t        |«      g	|¢}t        |ddi t        j
                  ¥dt        j                  dœ¥¬	«      }|j                  }|j                  }|j                  d
k(  sJ d|› d|› d�«       ‚|rt        j                  d|› �«       |j                  «       sJ ‚y )Nz-msphinxz-Wz-bÚhtmlz-dTÚ )Ú
MPLBACKENDÚGCOV_ERROR_FILE)Úcapture_outputÚtextÚenvr   z!sphinx build failed with stdout:
z	
stderr:
ú
z-sphinx build emitted the following warnings:
)ÚsysÚ
executableÚstrr   ÚosÚenvironÚdevnullÚstdoutÚstderrÚ
returncodeÚpytestÚfailÚis_dir)Ú
source_dirÚdoctree_dirÚhtml_dirÚ
extra_argsÚcmdÚprocÚoutÚerrs           út/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/matplotlib/tests/test_sphinxext.pyÚbuild_sphinx_htmlr%      sÖ   € à!Ð)‘¨z€JÜ�>‰>˜: t¨T°6Ø”�[Ó!¤3 z£?´C¸³MðPØDNðP€Cô
 &Ø˜D tØKŒr�z‰zÐK¨ÄÇ
Á
ÒKô€Dð �+‰+€CØ
�+‰+€Cà�?‰?˜aÒð EØ
,¨S¨E°¸S¸EÀÐDóEÐá
Ü�‰ÐDÀSÀEÐJÔKà�?‰?ÔÐÑó    c           
      ó
  ‡
‡‡— t        j                  t        | dt        j                  ddd«      ¬«       | dz  dz  }|dz  Š| dz  Š
t	        | ‰
|«       ˆfd„Šˆ
fd	„}ˆfd
„t        dd«      D «       \  }}}t        j                  | ‰d«      «      sJ ‚t        j                  | ‰d«      «      sJ ‚t        j                  | ‰d«      «      sJ ‚t        j                  | ‰d«      «      sJ ‚t        j                  | ‰d«      «      sJ ‚t        j                  | ‰d«      «      sJ ‚|dz  j                  d¬«      }d|v sJ ‚t        j                  |‰dz  «      sJ ‚t        j                  |‰dz  «      sJ ‚d|v sJ ‚d|v sJ ‚d|v sJ ‚d|v sJ ‚d|v sJ ‚|j                  d«      dk(  sJ ‚t        j                  | ‰d «      «      sJ ‚t        j                  |‰d!z  «      sJ ‚t        j                  |‰d"z  «      sJ ‚t        j                  |‰d#z  «      sJ ‚t        j                  |‰d$z  «      sJ ‚t        j                  |‰d%z  «      sJ ‚| d&z  j                  «       }|j                  d'd(«      }| d&z  j                  |«       d)D �cg c]"  } ||«      j                  «       j                  ‘Œ$ }	}t	        | ‰
|«       t        j                  | ‰d «      «      sJ ‚ |d«      j                  «       j                  |	d*   k(  sJ ‚ |d«      j                  «       j                  |	d   k(  sJ ‚ |d+«      j                  «       j                  |	d   k(  sJ ‚t        j                  | ‰d«      «      sJ ‚t        j                  | ‰d«      «      sJ ‚t        j                  | ‰d+«      «      sJ ‚ |d«      j                  «       j                  |	d+   kD  sJ ‚t        j                  | ‰d«      «      sJ ‚y c c}w ),NTÚ_buildÚdoctreesÚplot_directive©Údirs_exist_okÚignorer   Ú_imagesc                 ó   •— ‰d| › d�z  S ©Núsome_plots-ú.png© )ÚnumÚimg_dirs    €r$   Ú	plot_filez!test_tinypages.<locals>.plot_file5   s   ø€ Ø˜; s e¨4Ð0Ñ0Ð0r&   c                 ó0   •— ‰j                   dz  d| › d�z  S )Nr*   r1   r2   )Úparent)r4   r   s    €r$   Úplot_directive_filez+test_tinypages.<locals>.plot_directive_file8   s#   ø€ à×!Ñ!Ð$4Ñ4¸ÀSÀEÈÐ7NÑNÐNr&   c              3   ó.   •K  — | ]  } ‰|«      –— Œ y ­w©Nr3   )Ú.0Úir6   s     €r$   ú	<genexpr>z!test_tinypages.<locals>.<genexpr><   s   øè ø€ Ò!D°1¡)¨A§,Ñ!Dùs   ƒé   é   é   é   é   Ú12_00Ú12_01é   úsome_plots.htmlúutf-8©Úencodingz# Only a commentz
range4.pngzrange6_range6.pngz This is the caption for plot 15.z7Plot 17 uses the caption option,
with multi-line input.z3Plot 17 uses the alt option, with multi-line input.z This is the caption for plot 18.z&plot-directive my-class my-other-classz#This caption applies to both plots.é   é   zrange6_range10.pngzcustom-basename-6.pngzcustom-basename-4.pngzcustom-basename-4-6_00.pngzcustom-basename-4-6_01.pngzincluded_plot_21.rsts   plt.plot(range(6))s   plt.plot(range(4)))r?   rK   é   rA   r   rM   )ÚshutilÚcopytreeÚ	tinypagesÚignore_patternsr%   ÚrangeÚfilecmpÚcmpÚ	read_textÚcountÚ
read_bytesÚreplaceÚwrite_bytesÚstatÚst_mtime)Útmp_pathr   r9   Úrange_10Úrange_6Úrange_4Úhtml_contentsÚcontentsr=   Úmodification_timesr   r5   r6   s             @@@r$   Útest_tinypagesrc   *   s  ú€ Ü
‡O�O”I˜x°tÜ!×1Ñ1°(¸JØ3CóEõFð ˜(Ñ" VÑ+€HØ˜Ñ"€GØ˜ZÑ'€Kô �h ¨XÔ6ô1ôOó "E¼¸aÀ»Ô!DÑ€Hˆg�wä�;‰;�w¡	¨!£Ô-Ð-Ð-ä�;‰;�w¡	¨!£Ô-Ð-Ð-ä�;‰;�x¡¨2£Ô/Ð/Ð/ä�;‰;�x¡¨7Ó!3Ô4Ð4Ð4Ü�;‰;�w¡	¨'Ó 2Ô3Ð3Ð3ä�;‰;�w¡	¨"£Ô.Ð.Ð.àÐ 1Ñ1×<Ñ<ÀgÐ<ÓN€Mà Ñ.Ð.Ð.ä�;‰;�w ¨,Ñ 6Ô7Ð7Ð7Ü�;‰;�w Ð*=Ñ =Ô>Ð>Ð>à-°Ñ>Ð>Ð>ð FÈÑVÐVÐVà@ÀMÑQÐQÐQà-°Ñ>Ð>Ð>à3°}ÑDÐDÐDà×ÑÐDÓEÈÒJÐJÐJô �;‰;�w¡	¨"£Ô.Ð.Ð.ä�;‰;�x Ð+?Ñ!?Ô@Ð@Ð@ä�;‰;�w Ð*AÑ AÔBÐBÐBÜ�;‰;�w Ð*AÑ AÔBÐBÐBÜ�;‰;�w Ð*FÑ FÔGÐGÐGÜ�;‰;�w Ð*FÑ FÔGÐGÐGð Ð1Ñ1×=Ñ=Ó?€HØ×ÑÐ 5Ð7LÓM€HØÐ&Ñ&×3Ñ3°HÔ=ð $0ö1Øñ .¨aÓ0×5Ñ5Ó7×@Ó@ð 1Ðð 1ä�h ¨XÔ6Ü�;‰;�w¡	¨"£Ô.Ð.Ð.ñ ˜qÓ!×&Ñ&Ó(×1Ñ1Ð5GÈÑ5JÒJÐJÐJÙ˜qÓ!×&Ñ&Ó(×1Ñ1Ð5GÈÑ5JÒJÐJÐJÙ˜qÓ!×&Ñ&Ó(×1Ñ1Ð5GÈÑ5JÒJÐJÐJÜ�;‰;�x¡¨1£Ô.Ð.Ð.Ü�;‰;�w¡	¨!£Ô-Ð-Ð-Ü�;‰;�w¡	¨!£Ô-Ð-Ð-ñ ˜qÓ!×&Ñ&Ó(×1Ñ1Ð4FÀqÑ4IÒIÐIÐIÜ�;‰;�w¡	¨!£Ô-Ð-Ñ-ùò!1s   Ê'P c                 ó²  — t        j                  t        dz  | dz  «       t        j                  t        dz  | dz  «       | dz  }| dz  j	                  d«       | dz  dz  }t        | ||«       t        t        |j                  d«      «      «      d	k(  sJ ‚| dz  d
z  }t        | ||ddg¬«       t        t        |j                  d«      «      «      dk(  sJ ‚y )Núconf.pyÚ_staticr)   ú	index.rstz#
.. plot::

    plt.plot(range(2))
r(   Úhtml1ú**/index-1.pyr?   Úhtml2ú-Dzplot_html_show_source_link=0©r   r   ©	rN   ÚcopyfilerP   rO   Ú
write_textr%   ÚlenÚlistÚglob)r\   r   Ú	html_dir1Ú	html_dir2s       r$   Útest_plot_html_show_source_linkru      sÜ   € Ü
‡O�O”I 	Ñ)¨8°iÑ+?Ô@Ü
‡O�O”I 	Ñ)¨8°iÑ+?Ô@Ø˜ZÑ'€KØ�Ñ×'Ñ'ð )ô ð ˜8Ñ# gÑ-€IÜ�h ¨YÔ7ÜŒt�I—N‘N ?Ó3Ó4Ó5¸Ò:Ð:Ð:ð ˜8Ñ# gÑ-€IÜ�h ¨YØ"&Ð(FÐ!GõIäŒt�I—N‘N ?Ó3Ó4Ó5¸Ò:Ð:Ñ:r&   Úplot_html_show_source_linkr?   c                 ó>  — t        j                  t        dz  | dz  «       t        j                  t        dz  | dz  «       | dz  }| dz  j	                  d«       | dz  dz  }t        | ||dd	|› �g¬
«       t        t        |j                  d«      «      «      dk(  sJ ‚y )Nre   rf   r)   rg   z?
.. plot::
    :show-source-link: true

    plt.plot(range(2))
r(   r   rk   úplot_html_show_source_link=rl   ri   r?   rm   ©r\   rv   r   r   s       r$   Útest_show_source_link_truerz   ”   ó­   € ô ‡O�O”I 	Ñ)¨8°iÑ+?Ô@Ü
‡O�O”I 	Ñ)¨8°iÑ+?Ô@Ø˜ZÑ'€KØ�Ñ×'Ñ'ð )ô ð ˜(Ñ" VÑ+€HÜ�h ¨XØÐ+Ð,FÐ+GÐHðCJõ KäŒt�H—M‘M /Ó2Ó3Ó4¸Ò9Ð9Ñ9r&   c                 ó>  — t        j                  t        dz  | dz  «       t        j                  t        dz  | dz  «       | dz  }| dz  j	                  d«       | dz  dz  }t        | ||dd	|› �g¬
«       t        t        |j                  d«      «      «      dk(  sJ ‚y )Nre   rf   r)   rg   z@
.. plot::
    :show-source-link: false

    plt.plot(range(2))
r(   r   rk   rx   rl   ri   r   rm   ry   s       r$   Útest_show_source_link_falser}   §   r{   r&   c                 ób  — t        j                  t        dz  | dz  «       t        j                  t        dz  | dz  «       | dz  }| dz  j	                  d«       | dz  dz  }t        | ||«       t        t        |j                  d«      «      «      d	k(  sJ ‚|d
z  j                  «       }d|v sJ ‚y )Nre   rf   r)   rg   zE
.. plot::
    :filename-prefix: custom-name

    plt.plot(range(2))
r(   r   z**/custom-name.pyr?   ú
index.htmlzcustom-name.py)
rN   rn   rP   rO   ro   r%   rp   rq   rr   rU   ©r\   r   r   Úhtml_contents       r$   Ú/test_plot_html_show_source_link_custom_basenamer‚   º   s¸   € ä
‡O�O”I 	Ñ)¨8°iÑ+?Ô@Ü
‡O�O”I 	Ñ)¨8°iÑ+?Ô@Ø˜ZÑ'€KØ�Ñ×'Ñ'ð )ô ð ˜(Ñ" VÑ+€HÜ�h ¨XÔ6ô Œt�H—M‘MÐ"5Ó6Ó7Ó8¸AÒ=Ð=Ð=ð ˜|Ñ+×6Ñ6Ó8€LØ˜|Ñ+Ð+Ñ+r&   c                 óH  — t        j                  t        dz  | dz  «       t        j                  t        dz  | dz  «       | dz  }| dz  j	                  d«       | dz  dz  }t        | ||«       |dz  j                  d	¬
«      }d|v sJ ‚d|v sd|j                  «       v sJ ‚y y )Nre   rf   r)   rg   z‘
.. plot::
    :include-source:
    :code-caption: Example plotting code

    import matplotlib.pyplot as plt
    plt.plot([1, 2, 3], [1, 4, 9])
r(   r   r   rH   rI   zExample plotting codez<p class="caption"Úcaption)rN   rn   rP   rO   ro   r%   rU   Úlowerr€   s       r$   Útest_plot_html_code_captionr†   Ð   s¿   € ä
‡O�O”I 	Ñ)¨8°iÑ+?Ô@Ü
‡O�O”I 	Ñ)¨8°iÑ+?Ô@Ø˜ZÑ'€KØ�Ñ×'Ñ'ð )ô ð ˜(Ñ" VÑ+€HÜ�h ¨XÔ6ð ˜|Ñ+×6Ñ6ÀÐ6ÓH€LØ" lÑ2Ð2Ð2ð   <Ñ/°9À×@RÑ@RÓ@TÑ3TÐTÐTÐ3TÐ/r&   c           
      ó  ‡— t        j                  t        | dt        j                  ddd«      ¬«       | dz  dz  }|dz  Š| dz  }t	        | ||dd	g¬
«       dˆfd„	}dD ]4  } ||«      j                  «       sJ ‚ ||d¬«      j                  «       rŒ4J ‚ ‰dz  j                  «       sJ ‚‰dz  j                  «       sJ ‚‰dz  j                  «       sJ ‚‰dz  j                  «       sJ ‚‰dz  j                  «       sJ ‚‰dz  j                  «       sJ ‚‰dz  j                  «       sJ ‚‰dz  j                  «       sJ ‚d|dz  j                  d¬«      v sJ ‚d}||dz  j                  d¬«      v sJ ‚d}||dz  j                  d¬«      v sJ ‚y ) NTr(   r)   r*   r+   r   r.   rk   zplot_srcset=2xrl   c                 ó   •— ‰d| › |› d�z  S r0   r3   )r4   Úsuffr5   s     €r$   r6   z&test_srcset_version.<locals>.plot_fileó   s   ø€ Ø˜; s e¨D¨6°Ð6Ñ6Ð6r&   )	r?   rK   rM   rA   rB   rC   rF   é   rL   z.2x)r‰   znestedpage-index-1.pngznestedpage-index-1.2x.pngznestedpage-index-2.pngznestedpage-index-2.2x.pngznestedpage2-index-1.pngznestedpage2-index-1.2x.pngznestedpage2-index-2.pngznestedpage2-index-2.2x.pngzDsrcset="_images/some_plots-1.png, _images/some_plots-1.2x.png 2.00x"rG   rH   rI   zVsrcset="../_images/nestedpage-index-1.png, ../_images/nestedpage-index-1.2x.png 2.00x"znestedpage/index.htmlzXsrcset="../_images/nestedpage2-index-2.png, ../_images/nestedpage2-index-2.2x.png 2.00x"znestedpage2/index.html)r	   )rN   rO   rP   rQ   r%   ÚexistsrU   )r\   r   r   r6   ÚindÚstr5   s         @r$   Útest_srcset_versionrŽ   è   sð  ø€ Ü
‡O�O”I˜x°tÜ!×1Ñ1°(¸JØ3CóEõFð ˜(Ñ" VÑ+€HØ˜Ñ"€GØ˜ZÑ'€Kä�h ¨XØ"&Ð(8Ð!9õ;õ7ð /ò 3ˆÙ˜‹~×$Ñ$Ô&Ð&Ð&Ù˜ 5Ô)×0Ñ0Õ2Ð2Ð2ð3ð Ð.Ñ.×6Ñ6Ô8Ð8Ð8ØÐ1Ñ1×9Ñ9Ô;Ð;Ð;ØÐ.Ñ.×6Ñ6Ô8Ð8Ð8ØÐ1Ñ1×9Ñ9Ô;Ð;Ð;ØÐ/Ñ/×7Ñ7Ô9Ð9Ð9ØÐ2Ñ2×:Ñ:Ô<Ð<Ð<ØÐ/Ñ/×7Ñ7Ô9Ð9Ð9ØÐ2Ñ2×:Ñ:Ô<Ð<Ð<ð SØÐ,Ñ,×7Ñ7ÀÐ7ÓIñJð Kð Jð8€Bà�(Ð4Ñ4×?Ñ?ÈÐ?ÓQÑQÐQÐQð9€Bà�(Ð5Ñ5×@Ñ@È'Ð@ÓRÑRÐRÑRr&   r;   )Ú__doc__rS   r   Úpathlibr   rN   r   Úmatplotlib.testingr   r   ÚimportorskipÚ__file__r8   rP   r%   rc   ru   ÚmarkÚparametrizerz   r}   r‚   r†   rŽ   r3   r&   r$   ú<module>r–      s¾   ðÙ 8ã Û 	Ý Û Û 
å 9Û ð €× Ñ �H¨Õ 1ñ �‹N×!Ñ!Ð$4Ñ4€	óò.R.òj;ð* ‡�×ÑÐ5¸¸1°vÓ>ñ:ó ?ð:ð$ ‡�×ÑÐ5¸¸1°vÓ>ñ:ó ?ð:ò$,ò,Uó0'Sr&   