o
    ‘i3  ã                   @   s(  d dl 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mZ dd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd „ Zd!d"„ Zd#d$„ Zd%d&„ Zd'd(„ Zd)d*„ Zd+d,„ Z d-d.„ Z!d/d0„ Z"d1d2„ Z#d3d4„ Z$d5d6„ Z%d7d8„ Z&d9d:„ Z'dS );é    N)ÚPath)Úsubprocess_run_for_testing)Úpyplotc              
   C   sÀ   t  d¡ ttjƒjd d }| ¡ st  d¡ ttjƒ 	¡ }|  
d¡}| |d¡ ttjt|ƒt|ƒgdd | 	d¡}||kr^d	 
tj| d	¡| d	¡d
dddd¡}t  d| ¡ d S d S )NÚblacké   ztools/boilerplate.pyzboilerplate.py not foundz	pyplot.pyzutf-8T)ÚcheckÚ
zfound pyplot.pyzexpected pyplot.pyr   Ú )ÚfromfileÚtofileÚnZlinetermzøpyplot.py is not up-to-date. Please run 'python tools/boilerplate.py' to update pyplot.py. This needs to be done from an environment where your current working copy is installed (e.g. 'pip install -e'd). Here is a diff of unexpected differences:
%s)ÚpytestÚimportorskipr   ÚmplÚ__file__ÚparentsÚexistsÚskipÚpltÚ	read_textÚjoinÚ
write_textr   ÚsysÚ
executableÚstrÚdifflibZunified_diffÚsplitZfail)ZtmpdirZ
gen_scriptZorig_contentsZplt_fileZnew_contentsZdiff_msg© r   úk/var/www/html/eduruby.in/lip-sync/lip-sync-env/lib/python3.10/site-packages/matplotlib/tests/test_pyplot.pyÚtest_pyplot_up_to_date   s6   


þ
üÿüÿùr   c                 C   sà   t j ddd¡t j dd¡ddd„ƒƒ}t |¡ddd„ƒ}|d ƒ |d d	 |d d d
 |d d d | r7J ‚t t j¡ |d d W d   ƒ n1 sMw   Y  t t j¡ |d d ƒ W d   ƒ d S 1 siw   Y  d S )Nz	(version)ÚoldÚnewÚkwoc                 S   ó   d S ©Nr   ©r!   r"   r   r   r   Úfunc.   s   z1test_copy_docstring_and_deprecators.<locals>.funcc                 S   r#   r$   r   r%   r   r   r   Úwrapper_func3   s   z9test_copy_docstring_and_deprecators.<locals>.wrapper_func)r!   )r"   r%   )r    r$   )	r   Z_apiZrename_parameterZmake_keyword_onlyr   Z_copy_docstring_and_deprecatorsr   ÚwarnsÚMatplotlibDeprecationWarning)Zrecwarnr&   r'   r   r   r   Ú#test_copy_docstring_and_deprecators-   s    
ÿ"ÿr*   c                  C   sd   t  ¡ \} }t  d¡ | ¡ rJ ‚t  d¡ | ¡ sJ ‚t  ¡  | ¡ r&J ‚t  ¡  | ¡ s0J ‚d S )NFT)r   ÚsubplotsÚboxZget_frame_on)ÚfigÚaxr   r   r   Útest_pyplot_boxB   s   

r/   c                   C   s   t  g d¢g d¢¡ d S )N)é   r   é   )r   Z	stackplotr   r   r   r   Útest_stackplot_smokeN   s   r2   c                   C   sr   t  t¡ tjdd W d   ƒ n1 sw   Y  t  t¡ tjdd W d   ƒ d S 1 s2w   Y  d S )Nr0   )Znrows)Zncols)r   ÚraisesÚ	TypeErrorr   Úsubplotr   r   r   r   Útest_nrows_errorS   s   ÿ"ÿr6   c                   C   s¬   t  ¡  t ¡ s
J ‚t  ¡  t ¡ rJ ‚W d   ƒ n1 sw   Y  t ¡ s*J ‚t  ¡  t ¡ r4J ‚t  ¡  t ¡ r?J ‚W d   ƒ n1 sIw   Y  t ¡ rTJ ‚d S r$   )r   Úionr   Úis_interactiveÚioffr   r   r   r   Ú	test_ioffZ   ó   
ÿ
ÿr:   c                   C   s¬   t  ¡  t ¡ r
J ‚t  ¡  t ¡ sJ ‚W d   ƒ n1 sw   Y  t ¡ r*J ‚t  ¡  t ¡ s4J ‚t  ¡  t ¡ s?J ‚W d   ƒ n1 sIw   Y  t ¡ sTJ ‚d S r$   )r   r9   r   r8   r7   r   r   r   r   Útest_ionh   r;   r<   c                	   C   sd  t  ¡  t  ¡ . t ¡ rJ ‚t  ¡  t ¡ sJ ‚W d   ƒ n1 s$w   Y  t ¡ r/J ‚W d   ƒ n1 s9w   Y  t ¡ sDJ ‚t  ¡ " t  ¡  t ¡ rTJ ‚W d   ƒ n1 s^w   Y  W d   ƒ n1 smw   Y  t ¡ sxJ ‚t  ¡  t  ¡  W d   ƒ n1 s‹w   Y  t ¡ s–J ‚t  ¡  t  ¡ . t ¡ s¥J ‚t  ¡  t ¡ r°J ‚W d   ƒ n1 sºw   Y  t ¡ sÅJ ‚W d   ƒ n1 sÏw   Y  t ¡ rÚJ ‚t  ¡ " t  ¡  t ¡ sêJ ‚W d   ƒ n1 sôw   Y  W d   ƒ n	1 sw   Y  t ¡ rJ ‚t  ¡  t  ¡  W d   ƒ n	1 s$w   Y  t ¡ r0J ‚d S r$   )r   r7   r9   r   r8   r   r   r   r   Útest_nested_ion_ioffv   sP   

ÿü

ÿ€ÿ

ÿ

ÿü

ÿ€ÿ

ÿr=   c               
   C   sH   zt  d¡ W d S  ty# }  zt| ƒdksJ ‚W Y d } ~ d S d } ~ ww )Ngš™™™™™ñ?zQclose() argument must be a Figure, an int, a string, or None, not <class 'float'>)r   Úcloser4   r   )Úer   r   r   Ú
test_close¢   s   €ÿr@   c                  C   s^   t  d¡} | t  ¡ u sJ ‚t  d¡}|t  ¡ u sJ ‚t  d¡}| t  ¡ u s'J ‚| |u s-J ‚d S )Néy   éz   )r   r5   Úgca©Úax1Úax2Úax3r   r   r   Útest_subplot_reuseª   s   


rH   c                  C   sÆ   t  ¡  t  ¡ } t  ¡ }| d usJ ‚|| usJ ‚t  ¡  t  ¡  t jdd} t jdd}| d us2J ‚|| us8J ‚t  ¡  t  ¡  t jdd} t  ¡ }| d usPJ ‚|jdksWJ ‚|| us]J ‚t  ¡  d S )NÚpolar©Ú
projectionÚrectilinear)r   ÚfigureÚaxesr>   Úname©r.   rE   r   r   r   Útest_axes_kwargs´   s&   rQ   c                  C   sê   t  ¡ } t  ddd¡}t  ddd¡}t  ddd¡}t jddddd}t jddddd}|d us1J ‚||u s7J ‚||us=J ‚||usCJ ‚||u sIJ ‚|| jv sPJ ‚|| jv sWJ ‚|| jv s^J ‚|jdkseJ ‚|jdkslJ ‚|jdkssJ ‚d S )Nr0   r   rI   rJ   rL   )r   rM   r5   rN   rO   )r-   r.   rE   rF   rG   Zax4r   r   r   Útest_subplot_replace_projectionÍ   s"   rR   c                  C   s`   t jddd} t jddd}| |u sJ ‚|  ¡  t jddd}| |us%J ‚| t  ¡ jvs.J ‚d S )NrI   r   )rK   Ztheta_offsetr0   )r   r5   ÚremoveÚgcfrN   rD   r   r   r   Útest_subplot_kwarg_collisionå   s   rU   c                  C   s<   t  ¡  t  ¡ } t  ¡ }| d usJ ‚|| u sJ ‚t  ¡  d S r$   )r   rM   rC   r>   rP   r   r   r   Útest_gcaï   s   rV   c                  C   s¾   t  d¡} | t  ¡ u sJ ‚| t  d¡u sJ ‚|  ¡  t jddd}|t  ¡ u s)J ‚| t  ¡ jvs2J ‚|t  d¡u s;J ‚| ¡  t jddd}|t  ¡ u sNJ ‚||usTJ ‚|t  ¡ jvs]J ‚d S )Néo   rI   rJ   rL   )r   r5   rC   rS   rT   rN   rD   r   r   r   Útest_subplot_projection_reuseù   s   
rX   c                  C   sˆ   t jddd} t jddd}t jdddd}| |u sJ ‚| |u s"J ‚tjtdd t jddd	d}W d   ƒ d S 1 s=w   Y  d S )
NrW   rI   rJ   T)rI   )rI   rK   zpolar=True, yet projection='3d')ÚmatchÚ3d)r   r5   r   r3   Ú
ValueErrorrD   r   r   r   Ú test_subplot_polar_normalization  s   ÿ"þr\   c                  C   s~   t ƒ } t ¡ }|  |¡ d}|D ] }| ¡  tj|d}|t ¡ u s$J ‚|j|ks+J ‚|  |¡ qt| ƒdt|ƒ ks=J ‚d S )N)ZaitoffÚhammerZlambertZ	mollweiderI   rL   rZ   rJ   r0   )Úsetr   r5   ÚaddrS   rO   Úlen)Zcreated_axesr.   ZprojectionsZprojr   r   r   Útest_subplot_change_projection  s   
ra   c                  C   sX   t  ddd¡\} t| tjjƒsJ ‚t  ddd¡\}t|tjjƒs"J ‚| j|ju s*J ‚d S )Ng        g      ð?Úrog…ëQ¸ù?ç      à?Zbo)r   rI   Ú
isinstancer   ÚlinesZLine2DrN   )Zln1Zln2r   r   r   Útest_polar_second_call.  s
   rf   c                  C   sz   t  g d¢¡} t jg d¢d}tj |j ¡ | j ¡ ¡ t  g d¢¡} t jg d¢g d¢d}tj |j ¡ | j ¡ ¡ d S )N)çš™™™™™É?rg   rc   rc   )Úposition)çš™™™™™¹?ri   çš™™™™™é?rj   )r   rN   ÚnpÚtestingZassert_allcloseZbboxZ
get_points)ZaxrefZaxtestr   r   r   Útest_fallback_position8  s   ÿÿrm   c                  C   sX   t  ¡ } |  d¡}t  ¡  t  ¡ | ksJ ‚t  |d ¡}t  ¡ | ks$J ‚|| ks*J ‚d S )Nr   r0   )r   rM   Ú
subfiguresrT   )Zfig1ÚsubfigsÚcurrentr   r   r   Ú%test_set_current_figure_via_subfigureF  s   
rq   c                  C   sd   t  ¡ } |  d¡}|d jddd}|d jddd t  ¡ |ks#J ‚t  |¡ t  ¡ |ks0J ‚d S )Nr   r   r0   T)Zsqueeze)r   rM   rn   r+   rC   Zsca)r-   ro   r.   r   r   r   Ú"test_set_current_axes_on_subfigureR  s   

rr   c                  C   s,   t  d¡} tjj| jddd d¡dd d S )NÚIPythonz--pylabz-cú;)zimport matplotlib.pyplot as pltz<assert plt._REPL_DISPLAYHOOK == plt._ReplDisplayHook.IPYTHONé<   )Útimeout)r   r   r   rl   Zsubprocess_run_helperZstart_ipythonr   )rs   r   r   r   Útest_pylab_integration^  s   

ørw   c                  C   sŠ   t tƒjd } |  ¡ st d¡ dd„ }|  ¡  d¡}t||ƒƒ}tt	 
¡ ƒ}| |¡}|r5td|›ƒ‚| |¡}|rCtd|›ƒ‚dS )	z6Test that pyplot_summary lists all the plot functions.z#../../../doc/api/pyplot_summary.rstz#Documentation sources not availablec                 S   sZ   g }d}| D ]$}|s|  d¡rd}q|r|  d¡rq|d  ¡ s#d}q| | ¡ ¡ q|S )ae  
        Return a list of all the functions that are mentioned in the
        autosummary blocks contained in *lines*.

        An autosummary block looks like this::

            .. autosummary::
               :toctree: _as_gen
               :template: autosummary.rst
               :nosignatures:

               plot
               plot_date

        Fz.. autosummary::Tz   :r   )Ú
startswithÚisspaceÚappendÚstrip)re   Z	functionsZin_autosummaryÚliner   r   r   Úextract_documented_functionsr  s   
€z=test_doc_pyplot_summary.<locals>.extract_documented_functionsr   zsThe following pyplot functions are not listed in the documentation. Please add them to doc/api/pyplot_summary.rst: z•The following functions are listed in the pyplot documentation, but they do not exist in pyplot. Please remove them from doc/api/pyplot_summary.rst: N)r   r   Úparentr   r   r   r   r   r^   r   Z_get_pyplot_commandsÚ
differenceÚAssertionError)Zpyplot_docsr}   re   Zdoc_functionsZplot_commandsÚmissingÚextrar   r   r   Útest_doc_pyplot_summaryl  s,   
!
þÿ
þÿÿrƒ   c                  C   sÆ   t  ¡  t  t dd¡¡ t jdd\} }t |tjg tjdk¡s$J ‚|g ks*J ‚t j	ddgdd	gdd
 t  
¡ }|jdd} |jdd}t | t ddg¡k¡sTJ ‚dd„ |D ƒdd	gksaJ ‚d S )Nr0   é
   T)Úminor)Zdtypeg      @g      @ÚaÚb)ZticksÚlabelsr…   c                 S   s   g | ]}|  ¡ ‘qS r   )Zget_text)Ú.0Úlr   r   r   Ú
<listcomp>°  s    z$test_minor_ticks.<locals>.<listcomp>)r   rM   Zplotrk   ZarangeZxticksÚallÚarrayZfloat64ZyticksrC   Z
get_yticksZget_yticklabels)Ztick_posZtick_labelsr.   r   r   r   Útest_minor_ticks¤  s   rŽ   c                  C   sš   t  d¡ t  ¡ } t  ¡ } tt  ¡ ƒdksJ ‚t  d¡ tt  ¡ ƒdks&J ‚t tj¡ t  d¡ W d   ƒ n1 s<w   Y  tt  ¡ ƒdksKJ ‚d S )NZaggr   Úsvgr   )	r   Zswitch_backendrM   r`   Zget_fignumsr   r(   r   r)   )r-   r   r   r   Útest_switch_backend_no_close³  s   

ÿr   c                 C   s
   d| _ d S )NT)Ú_test_was_here)rM   r   r   r   Úfigure_hook_example¿  s   
r’   c                  C   sJ   ddgi} t  | ¡ t ¡ }W d   ƒ n1 sw   Y  |js#J ‚d S )Nzfigure.hooksz0matplotlib.tests.test_pyplot:figure_hook_example)r   Z
rc_contextr   rM   r‘   )Ztest_rcr-   r   r   r   Útest_figure_hookÃ  s   ÿ
ÿr“   )(r   Únumpyrk   r   Úpathlibr   r   Z
matplotlibr   Zmatplotlib.testingr   r   r   r   r*   r/   r2   r6   r:   r<   r=   r@   rH   rQ   rR   rU   rV   rX   r\   ra   rf   rm   rq   rr   rw   rƒ   rŽ   r   r’   r“   r   r   r   r   Ú<module>   sF    ,



8