
    .i                         d dl Z d dlmZ  e j                  d      Z e j                  d      Zd dlmZ  G d d      Zy)    N)Series
matplotlibzmatplotlib.pyplotget_standard_colorsc                      e Zd Zej                  j                  ddg dfdg dfdg dfdd	d
gfdd	gfg      d        Zej                  j                  dddgfdg dfdg dfdg dfdg dfg      d        Zej                  j                  dddgfdg dfdg dfg      d        Zej                  j                  ddg dfdg dfdg dfdg dfg      d        Z	ej                  j                  ddg dfdg dfdg dfdg dfdg dfdg d fg      d!        Z
ej                  j                  ddd"gfdd"d"gfdg d#fg      d$        Zej                  j                  d%d&dd&gfd'dd'd'gfd(dg d)fg      d*        Zej                  j                  d+d,g d- eg d./      g      d0        Zej                  j                  d+g d1      d2        Zy3)4TestGetStandardColorsznum_colors, expected   redgreenblue   )r   r   r   r   r      )r   r   r   r   r   r   r      r   r      c                     dt         j                  g d      i}t        j                  |      5  t	        |      }||k(  sJ 	 d d d        y # 1 sw Y   y xY w)Naxes.prop_cycler
   colorrc
num_colorspltcyclermpl
rc_contextr   selfr   expected
mpl_paramsresults        ^/var/www/app/trading-bot/venv/lib/python3.12/site-packages/pandas/tests/plotting/test_style.py)test_default_colors_named_from_prop_cyclez?TestGetStandardColors.test_default_colors_named_from_prop_cycle   sY     szz0HzI

 ^^z^* 	&(J?FX%%%	& 	& 	&s   AAb)r&   gr   )r&   r'   r(   y)r&   r'   r(   r*   r&   )r&   r'   r(   r*   r&   r'   r(   c                     dt         j                  d      i}t        j                  |      5  t	        |      }||k(  sJ 	 d d d        y # 1 sw Y   y xY w)Nr   bgryr   r   r   r   r   s        r$   0test_default_colors_named_from_prop_cycle_stringzFTestGetStandardColors.test_default_colors_named_from_prop_cycle_string   sX     szzz7

 ^^z^* 	&(J?FX%%%	& 	& 	&s   AAznum_colors, expected_nameC0)r.   C1C2   )r.   r/   r0   C3C4C5C6C7C8C9r.   r/   c                     t         j                  i       5  |D cg c]!  }t         j                  j                  |      # }}t	        |      }||k(  sJ 	 d d d        y c c}w # 1 sw Y   y xY w)Nr   r   )r   r   colorsto_hexr   )r    r   expected_namexr!   r#   s         r$   .test_default_colors_named_undefined_prop_cyclezDTestGetStandardColors.test_default_colors_named_undefined_prop_cycle/   si    2 ^^r^" 	&6CD

))!,DHD(J?FX%%%	& 	&D	& 	&s   A&&A!A&!A&&A/r   r   皙?皙?333333?)r   r   r@   r   c                 4    g d}t        ||      }||k(  sJ y )Nr?   r   r   r   r    r   r!   r   r#   s        r$   test_user_input_color_sequencez4TestGetStandardColors.test_user_input_color_sequenceM   s#     2$5ZH!!!    )r(   r'   r&   k)r(   r'   r&   rI   r(      )r(   r'   r&   rI   r(   r'   c                 0    d}t        ||      }||k(  sJ y )NrgbkrE   r   rF   s        r$   test_user_input_color_stringz2TestGetStandardColors.test_user_input_color_string[   s#     $5ZH!!!rH   r@   )r@   r@   r@   c                 0    d}t        ||      }||k(  sJ y )Nr@   rE   r   rF   s        r$   test_user_input_color_floatsz2TestGetStandardColors.test_user_input_color_floatsk   s#      $5ZH!!!rH   zcolor, num_colors, expectedCrimson
DodgerBlue	firebrick)rR   rR   rR   c                 ,    t        ||      }||k(  sJ y )NrE   r   )r    r   r   r!   r#   s        r$   "test_user_input_named_color_stringz8TestGetStandardColors.test_user_input_named_color_stringx   s     %5ZH!!!rH   r     object)dtypec                 ~    t        j                  t        d      5  t        |d       d d d        y # 1 sw Y   y xY w)NzInvalid color argumentmatchr   rE   pytestraises
ValueErrorr   r    r   s     r$   test_empty_color_raisesz-TestGetStandardColors.test_empty_color_raises   s0    ]]:-EF 	;e:	; 	; 	;   3<)	bad_color)r   r   rc   )rA   )rA   rB   )rA   rB   rC   g?g      ?c                 ~    t        j                  t        d      5  t        |d       d d d        y # 1 sw Y   y xY w)NzInvalid colorrZ   r   rE   r\   r`   s     r$   test_bad_color_raisesz+TestGetStandardColors.test_bad_color_raises   s1     ]]:_= 	;e:	; 	; 	;rb   N)__name__
__module____qualname__r]   markparametrizer%   r-   r>   rG   rM   rO   rT   r   ra   re   rV   rH   r$   r   r   
   s   [[()89GH !L	
	&	& [[J $%)*34	
	&	& [[#K"#	
0&10& [[12121289		
""
 [[$%$%$%$%)*./	

"
"
 [[!"/23CD	
""
 [[%I;'1|\:;!DE	
"" [[Wr2r6"H3M&NO; P; [[	
	;	;rH   r   )	r]   pandasr   importorskipr   r   !pandas.plotting._matplotlib.styler   r   rV   rH   r$   <module>rn      s?     f,'f-. AK; K;rH   