ó
—W[c           @   sø   d  d l  Z d  d l Z d  d l m Z d  d l Z d  d l j Z	 d  d l
 j Z d  d l j Z d d l m Z m Z m Z d e f d „  ƒ  YZ d e f d „  ƒ  YZ d	 e f d
 „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d „  Z d S(   iÿÿÿÿN(   t   LooseVersioni   (   t   rcmodt   palettest   utilst   RCParamTesterc           B   s   e  Z d  „  Z d „  Z RS(   c         C   s<   t  t j | ƒ } g  | D] } | D] } | ^ q# q } | S(   N(   t   mapt   npt
   atleast_1d(   t   selft	   orig_listt	   iter_listt   sublistt   itemt	   flat_list(    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   flatten_list   s    &c         C   sp   xi | j  ƒ  D][ \ } } t | t j ƒ rE t j t j | | ƒ q t j	 | t j | f | | f ƒ q Wd  S(   N(
   t   itemst
   isinstanceR   t   ndarrayt   nptt   assert_array_equalt   mplt   rcParamst   ntt   assert_equal(   R   t   paramst   kt   v(    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   assert_rc_params   s    (   t   __name__t
   __module__R   R   (    (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyR      s   	t   TestAxesStylec           B   sw   e  Z d  d d d d g Z d „  Z d „  Z d „  Z d „  Z d	 „  Z d
 „  Z d „  Z	 d „  Z
 d „  Z d „  Z RS(   t   whitet   darkt	   whitegridt   darkgridt   ticksc         C   s   t  j ƒ  } |  j | ƒ d  S(   N(   R   t
   axes_styleR   (   R   t   current(    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_default_return!   s    c         C   sH   t  t j ƒ } x2 |  j D]' } t j t  t j | ƒ ƒ | Aƒ q Wd  S(   N(   t   setR   t   _style_keyst   stylesR   t   assert_trueR$   (   R   R(   t   style(    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_key_usage&   s    c         C   s'   t  j t ƒ  t j d ƒ Wd  QXd  S(   Nt   i_am_not_a_style(   R   t   assert_raisest
   ValueErrorR   R$   (   R   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_bad_style,   s    c         C   sN   i d d 6d d 6} t  j d | ƒ } t j | d d ƒ t j d | ƒ d  S(   Nt   blues   axes.facecolort   bars   foo.notaparamR"   (   R   R$   R   R   t   assert_not_in(   R   t   rct   out(    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_rc_override1   s    c         C   sA   x: |  j  D]/ } t j | ƒ } t j | ƒ |  j | ƒ q
 Wd  S(   N(   R)   R   R$   t	   set_styleR   (   R   R+   t
   style_dict(    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_set_style8   s    c            s‘   t  j d ƒ t  j ƒ  } t  j d ƒ ‰  t  j d ƒ  ˆ j ˆ  ƒ Wd  QXˆ j | ƒ t  j d ƒ ‡  ‡ f d †  ƒ } | ƒ  ˆ j | ƒ d  S(   NR"   R!   c              s   ˆ j  ˆ  ƒ d  S(   N(   R   (    (   t   context_paramsR   (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   funcJ   s    (   R   R7   R$   R   (   R   t   orig_paramsR;   (    (   R:   R   s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_style_context_manager@   s    !c         C   s'   t  j t t j ƒ t t j ƒ Aƒ d  S(   N(   R   R*   R'   R   R(   t   _context_keys(   R   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_style_context_independenceP   s    c         C   s<   t  j d i d d 6ƒ t j t j d d ƒ t  j ƒ  d  S(   NR4   i   s   lines.linewidth(   R   R'   R   R   R   R   (   R   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_set_rcT   s    c         C   sO   t  t j ƒ t  d ƒ k  r' t j ‚ n  t j ƒ  |  j t j ƒ t j	 ƒ  d  S(   Ns   1.3(
   R    R   t   __version__t   noset   SkipTestR   t   reset_defaultsR   t   rcParamsDefaultR'   (   R   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_reset_defaultsZ   s
    
c         C   sO   t  t j ƒ t  d ƒ k  r' t j ‚ n  t j ƒ  |  j t j ƒ t j	 ƒ  d  S(   Ns   1.3(
   R    R   RA   RB   RC   R   t
   reset_origR   t   rcParamsOrigR'   (   R   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_reset_orige   s
    
(   R   R   R)   R&   R,   R0   R6   R9   R=   R?   R@   RF   RI   (    (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyR      s   									t   TestPlottingContextc           B   sY   e  Z d  d d d g Z d „  Z d „  Z d „  Z d „  Z d „  Z d	 „  Z d
 „  Z	 RS(   t   papert   notebookt   talkt   posterc         C   s   t  j ƒ  } |  j | ƒ d  S(   N(   R   t   plotting_contextR   (   R   R%   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyR&   u   s    c         C   sN   t  t j ƒ } x8 |  j D]- } t  t j | ƒ ƒ | A} t j | ƒ q Wd  S(   N(   R'   R   R>   t   contextsRO   R   R*   (   R   R>   t   contextt   missing(    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyR,   z   s    c         C   s'   t  j t ƒ  t j d ƒ Wd  QXd  S(   Nt   i_am_not_a_context(   R   R.   R/   R   RO   (   R   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_bad_context   s    c         C   sj   t  j d ƒ } t  j d d ƒ } d d d d d d g } x* | D]" } t j | | d | | ƒ q@ Wd  S(	   NRL   i   s   axes.labelsizes   axes.titlesizes   legend.fontsizes   xtick.labelsizes   ytick.labelsizes	   font.size(   R   RO   R   R   (   R   t   notebook_reft   notebook_bigt	   font_keysR   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_font_scale†   s    	c         C   s]   d \ } } i | | 6d d 6} t  j d d | ƒ} t j | | | ƒ t j d | ƒ d  S(   Ns   grid.linewidthi   R2   t   fooRM   R4   (   s   grid.linewidthi   (   R   RO   R   R   R3   (   R   t   keyt   valR4   R5   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyR6   ‘   s
    c         C   sA   x: |  j  D]/ } t j | ƒ } t j | ƒ |  j | ƒ q
 Wd  S(   N(   RP   R   RO   t   set_contextR   (   R   RQ   t   context_dict(    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_set_context™   s    c            s‘   t  j d ƒ t  j ƒ  } t  j d ƒ ‰  t  j d ƒ  ˆ j ˆ  ƒ Wd  QXˆ j | ƒ t  j d ƒ ‡  ‡ f d †  ƒ } | ƒ  ˆ j | ƒ d  S(   NRL   RK   c              s   ˆ j  ˆ  ƒ d  S(   N(   R   (    (   R:   R   (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyR;   «   s    (   R   R\   RO   R   (   R   R<   R;   (    (   R:   R   s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_context_context_manager¡   s    !(
   R   R   RP   R&   R,   RT   RX   R6   R^   R_   (    (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyRJ   q   s   						t   TestPalettec           B   s   e  Z d  „  Z RS(   c         C   sÑ   t  j d ƒ t j ƒ  t j d d ƒ k s1 t ‚ t  j d ƒ t j ƒ  t j d d ƒ k sb t ‚ t  j d d ƒ t j ƒ  t j d d ƒ k s– t ‚ t  j d d t ƒt j ƒ  t j d d	 ƒ k sÍ t ‚ d  S(
   Nt   deepi
   t   pastel6i   R    i   t   Set2t   color_codesi   (   R   t   set_paletteR   t   get_color_cycleR   t   color_palettet   AssertionErrort   True(   R   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_set_palette´   s    $$$(   R   R   Rj   (    (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyR`   ²   s   t	   TestFontsc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s—   t  j d d ƒ t j ƒ  \ } } | j d ƒ zV y  t j | j j j	 ƒ  d ƒ Wn/ t
 k
 rƒ t ƒ  rq ‚  q„ t j d ƒ ‚ n XWd  t  j ƒ  Xd  S(   Nt   fontt   VerdanaRY   s   Verdana font is not present(   R   R'   t   pltt   subplotst
   set_xlabelR   R   t   xaxist   labelt   get_fontnameRh   t   has_verdanaRB   RC   (   R   t   _t   ax(    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_set_fontÅ   s     	c         C   s`   t  j d d ƒ t j ƒ  \ } } | j d ƒ t j | j j j	 ƒ  t
 j d ƒ t  j ƒ  d  S(   NRl   t   serifRY   s
   font.serif(   R   R'   Rn   Ro   Rp   R   t	   assert_inRq   Rr   Rs   R   R   (   R   Ru   Rv   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_set_serif_font×   s    c         C   sÒ   t  t j ƒ t  d ƒ k  r' t j ‚ n  t j ƒ  t j d i d g d 6ƒ t j	 ƒ  \ } } | j
 d ƒ zV y  t j | j j j ƒ  d ƒ Wn/ t k
 r¾ t ƒ  r¬ ‚  q¿ t j d ƒ ‚ n XWd  t j ƒ  Xd  S(   Ns   1.4R4   Rm   s   font.sans-serifRY   s   Verdana font is not present(   R    R   RA   RB   RC   R   R'   R7   Rn   Ro   Rp   R   R   Rq   Rr   Rs   Rh   Rt   (   R   Ru   Rv   (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   test_different_sans_serifã   s    
 	(   R   R   Rw   Rz   R{   (    (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyRk   Ã   s   		c          C   sa   d d l  j }  y |  j d d t ƒ} Wn t SXy |  j d d t ƒ} Wn t SX| | k S(   s+   Helper to verify if Verdana font is presentiÿÿÿÿNRm   t   fallback_to_defaultt   very_unlikely_to_exist1234(   t   matplotlib.font_managert   font_managert   findfontt   FalseRi   (   t   mplfmt   verdana_fontt   unlikely_font(    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyRt   ú   s    (   t   numpyR   t
   matplotlibR   t   distutils.versionR    RB   t   matplotlib.pyplott   pyplotRn   t
   nose.toolst   toolsR   t   numpy.testingt   testingR   t    R   R   R   t   objectR   R   RJ   R`   Rk   Rt   (    (    (    s7   lib/python2.7/site-packages/seaborn/tests/test_rcmod.pyt   <module>   s   TA7