o
    e                     @   s   d dl Z d dlm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 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S )    N)StringIO)cyclerc                  C   b   t  \} }|tdg d tdD ]}|tdtd qdd |jD g dks/J d S )Ncolorrgy   
   c                 S      g | ]}|  qS  	get_color.0lr   r   K/var/www/myenv/lib/python3.10/site-packages/matplotlib/tests/test_cycles.py
<listcomp>       z)test_colorcycle_basic.<locals>.<listcomp>r   r   r	   r   pltsubplotsset_prop_cycler   rangeplotlinesfigax_r   r   r   test_colorcycle_basic   
    r"   c                  C   s   t  \} }|tdg dtdg d  tdD ]}|tdtd qdd |jD g d	ks6J d
d |jD g dksDJ d S )Ncr   marker.*xr
   r   c                 S   r   r   r   r   r   r   r   r      r   z%test_marker_cycle.<locals>.<listcomp>r   c                 S   r   r   
get_markerr   r   r   r   r      r   r'   r(   r)   r'   r   r   r   r   r   test_marker_cycle   s    r-   c                  C   s   t  \} }|jtg dtg dd tdD ]}|tdtd qdd |jD g dks5J d	d |jD g d
ksCJ d S )Nr   r&   )r$   r%   r
   r   c                 S   r   r   r   r   r   r   r   r   $   r   z=test_marker_cycle_kwargs_arrays_iterators.<locals>.<listcomp>r   c                 S   r   r   r*   r   r   r   r   r   %   r   r,   )	r   r   r   nparrayiterr   r   r   r   r   r   r   )test_marker_cycle_kwargs_arrays_iterators   s   
 r1   c                  C   r   )Nls---:r
   r   c                 S   r   r   get_linestyler   r   r   r   r   -   r   z-test_linestylecycle_basic.<locals>.<listcomp>r4   r5   r6   r4   r   r   r   r   r   test_linestylecycle_basic(   r#   r:   c                  C   s   t  \} }|tdg dtdg d tdg d  tdD ]}|tdtd q"d	d
 |jD dd
 dD ks@J dd
 |jD g dksNJ dd
 |jD g dks\J d S )Nr$   r   hatchxxO|-	linestyler3   r
   r   c                 S   r   r   get_facecolorr   pr   r   r   r   7   r   z(test_fillcycle_basic.<locals>.<listcomp>c                 S      g | ]}t j|qS r   mplcolorsto_rgbar   r$   r   r   r   r   8       r   c                 S   r   r   	get_hatchrC   r   r   r   r   9   r   )r=   r>   r?   r=   c                 S   r   r   r7   rC   r   r   r   r   :   r   r9   r   r   r   r   r   fillpatchesr   r   r   r   test_fillcycle_basic0   s    rQ   c                  C   s   t  \} }|tdg dtdg d tdg d  td}|j||dd	d
 |j||dd
 ||| ||| dd |jD dd dD ksPJ dd |jD g dks^J d S )Nr   r   r;   r<   r%   )r'   r(   Dr   r   r=   )r;   r>   c                 S   r   r   rA   rC   r   r   r   r   K   r   z)test_fillcycle_ignore.<locals>.<listcomp>c                 S   rE   r   rF   rJ   r   r   r   r   L   rK   )r   r   r   r	   c                 S   r   r   rL   rC   r   r   r   r   M   r   )r=   r>   r>   r?   rN   )r   r    tr   r   r   test_fillcycle_ignore=   s    rT   c                  C   s|   t  \} }|dddg td}tddD ]
}|j||dd q||| ||| dd	 |jD g d
ks<J d S )N	linewidth   r
   r      皙?lwc                 S   r   r   get_linewidthr   r   r   r   r   X   r   z0test_property_collision_plot.<locals>.<listcomp>)rX   rX   rX   rV   r
   )r   r   r   r   r   r   r   r    rS   r$   r   r   r   test_property_collision_plotP   s    r^   c                  C   s   t  \} }|jg ddd td}tddD ]
}|j||dd q||| ||| d	d
 |jD dd
 dD ks@J dd
 |jD g dksNJ d S )N)rV      r
         bgcmy)rU   	facecolorr   rW   r
   rX   rY   c                 S   r   r   rA   rC   r   r   r   r   c   r   z0test_property_collision_fill.<locals>.<listcomp>c                 S   rE   r   rF   rJ   r   r   r   r   d   rK   c                 S   r   r   r[   rC   r   r   r   r   e   r   )rX   rX   rX   r`   ra   )r   r   r   r   rO   rP   r]   r   r   r   test_property_collision_fill[   s    rd   c               	   C   s  t  \} }|d  |tdddg |dd |dd |dddg |dtddg |dtddg |dtg dg d	g d
g |dg ddgg dg |jddgddgddgd |jtddgtddgtddgd d S )NrU   rW   rV   r   rgywkbcmrZ   )rW   rV   )rW   r   r   )r   rW   r   )r   r   rW   dashes   )   r_   rW   r_   kwr4   r5   )rZ   r   r2   )r   r   r   r   r0   r.   r/   r   r    r   r   r   test_valid_input_formsh   s$   

rl   c                  C   s6  t  \} }t }t }t }t| t |jddgddd  W d    n1 s-w   Y  |jg dd t| t |jddgddd  W d    n1 sXw   Y  | | ksgJ |d  t| t |jddgddd  W d    n1 sw   Y  | | ksJ d S )NrW   rV   label)rm   r   )r   	   r
   )rU   )	r   r   r   
contextlibredirect_stdoutgetpr   r   getvalue)r   r    prop0prop1prop2r   r   r   test_cycle_reset|   s"   
rv   c                  C   sr  t  \} }tttf |d W d    n1 sw   Y  tttf |ddg W d    n1 s;w   Y  tttf |dd W d    n1 sXw   Y  tttf |dd W d    n1 suw   Y  tttf |dddh W d    n1 sw   Y  tttf |jddd W d    n1 sw   Y  tttf |dddg W d    n1 sw   Y  tttf |jddgd	 W d    n1 sw   Y  tttf |tddgd	 W d    n	1 sw   Y  tt |td
dd W d    d S 1 s2w   Y  d S )NrW   rV   r   fishrU   r   )rU   r   foobar)rx   rgbcmy)r   r$   )r   r   pytestraises	TypeError
ValueErrorr   r   rk   r   r   r   test_invalid_input_forms   s>   $r   )ro   ior   
matplotlibrG   matplotlib.pyplotpyplotr   numpyr.   r{   r   r"   r-   r1   r:   rQ   rT   r^   rd   rl   rv   r   r   r   r   r   <module>   s$    

