
    (?eU
                     d   d dl Z d dlZd dlZd dlZd dlZej                            dg d          d             Zej                            ej	        dk    d          ej                            ej	        dk    o e j
                    d k    d          d	                         Zd
 Zd Zd ZdS )    Nzversion_str, version_tuple))z3.5.0)      r   finalr   )z3.5.0rc2)r   r   r   	candidate   )z3.5.0.dev820+g6768ef8c4c)r   r   r   alpha4  )z3.5.0.post820+g6768ef8c4c)r   r      r   r	   c                 :    t          j        |           |k    sJ d S )N)
matplotlib_parse_to_version_info)version_strversion_tuples     @lib/python3.11/site-packages/matplotlib/tests/test_matplotlib.pytest_parse_to_version_infor   
   s&     ,[99]JJJJJJ    win32z%chmod() doesn't work as is on Windows)reasonzchmod() doesn't work as rootc                 t   t          j        |           j        }	 t          j        | d           t	          j        t          j        ddgi t           j        dt          |           it          j
        dd          }d|j        v sJ 	 t          j        | |           dS # t          j        | |           w xY w)	zETest that a warning is emitted if a temporary configdir must be used.r   -czimport matplotlibMPLCONFIGDIRT)envstderrtextcheckzset the MPLCONFIGDIRN)osstatst_modechmod
subprocessrunsys
executableenvironstrPIPEr   )tmpdirmodeprocs      r   test_tmpconfigdir_warningr*      s     76??"D
~^T#67;2:;~s6{{;;?T; ; ; &44444
s   A-B   B7c                     t          j        t          j        ddgi t          j        dt          |           id           d S )Nr   zOimport pathlib; pathlib.Path.home = lambda *args: 1/0; import matplotlib.pyplotr   T)r   r   )r    r!   r"   r#   r   r$   r%   )r'   s    r   test_importable_with_no_homer,   &   sZ    N	
$	% 8rz7>3v;;77t	E E E E E Er   c                      d } t           | d                    t          t          j        j                  k    sJ t           | d                    t          t          j        j                  k    sJ dS )z
    Test that the standard backends mentioned in the docstring of
    matplotlib.use() are the same as in matplotlib.rcsetup.
    c                     g }t           j        j                            |           d                             d          D ]:}|                                s n#|d |                    d          D             z  };|S )Nr
   
c                 :    g | ]}||                                 S  )strip).0es     r   
<listcomp>zAtest_use_doc_standard_backends.<locals>.parse.<locals>.<listcomp>8   s%    AAAqqAAAAr   ,)r   use__doc__splitr2   )keybackendslines      r   parsez-test_use_doc_standard_backends.<locals>.parse3   s}    N*0055a8>>tDD 	B 	BD::<< AADJJsOOAAAAHHr   z- interactive backends:
z- non-interactive backends:
N)setr   rcsetupinteractive_bknon_interactive_bk)r=   s    r   test_use_doc_standard_backendsrB   .   s    
   12233
"1223 3 3 356677
"5667 7 7 7 7 7r   c                      d} t           j        dd| g}t          j        |i t          j        ddi          dk    sJ dS )	z
    When using -OO or export PYTHONOPTIMIZE=2, docstrings are discarded,
    this simple test may prevent something like issue #17970.
    zimport matplotlib as mpl; import matplotlib.pyplot as plt; import matplotlib.cbook as cbook; import matplotlib.patches as mpatchesz-OOr   
MPLBACKEND )r   r   N)r"   r#   r    callr   r$   )programcmds     r   test_importable_with__OOrI   A   sV    	0  >5$
0C?3$Drz$D<$D$DEEEJJJJJJr   )r   r    r"   pytestr   markparametrizer   skipifplatformgeteuidr*   r,   rB   rI   r1   r   r   <module>rP      sC   				     



      5 8 8 8  K K K CLG+B  D DCLG+A

0A9  ; ; ; ;D DE E E8 8 8&K K K K Kr   