U
    FvfD
                     @   s   d dl Z d dlZd dlZd dlZd dlZejdddddgdd Zejje j	d	kd
dejje j	d	kote 
 d kdddd Zdd Zdd Zd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                 C   s   t | |kstd S )N)
matplotlibZ_parse_to_version_infoAssertionError)version_strZversion_tuple r   D/tmp/pip-unpacked-wheel-7vhvci0g/matplotlib/tests/test_matplotlib.pytest_parse_to_version_info
   s    r   ntz%chmod() doesn't work as is on Windows)reasonzchmod() doesn't work as rootc              
   C   sj   t | j}zJt | d tjtjddgt jdt	| itj
ddd}d|jksTtW 5 t | | X dS )	zETest that a warning is emitted if a temporary configdir must be used.r   -czimport matplotlibMPLCONFIGDIRT)envstderruniversal_newlinescheckzset the MPLCONFIGDIRN)osstatst_modechmod
subprocessrunsys
executableenvironstrPIPEr   r   )tmpdirmodeprocr   r   r   test_tmpconfigdir_warning   s    
  r&   c                 C   s*   t jtjddgtjdt| id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#   r   r   r   test_importable_with_no_home&   s     r'   c                  C   sD   dd } t | dt tjjks$tt | dt tjjks@tdS )z
    Test that the standard backends mentioned in the docstring of
    matplotlib.use() are the same as in matplotlib.rcsetup.
    c                 S   sJ   g }t jj| d dD ](}| s, qF|dd |dD 7 }q|S )Nr	   
c                 S   s   g | ]}|r|  qS r   )strip).0er   r   r   
<listcomp>8   s      zAtest_use_doc_standard_backends.<locals>.parse.<locals>.<listcomp>,)r
   Zuse__doc__splitr)   )keybackendsliner   r   r   parse3   s    z-test_use_doc_standard_backends.<locals>.parsez- interactive backends:
z- non-interactive backends:
N)setr
   ZrcsetupZinteractive_bkr   Znon_interactive_bk)r3   r   r   r   test_use_doc_standard_backends.   s    



r5   c                  C   s6   d} t jdd| g}tj|tjddiddks2t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   Z
MPLBACKEND )r   r   N)r   r   r   callr   r    r   )programcmdr   r   r   test_importable_with__OOA   s    r:   )r   r   r   Zpytestr
   markZparametrizer   Zskipifnamegeteuidr&   r'   r5   r:   r   r   r   r   <module>   s,   
 