ó
mÜJ]c           @` s,  d  d l  m Z m Z m Z m Z d  d l Z e d  d l Z d  d l m Z d  d l Z	 d  d l
 m Z m Z m Z d  d l m Z m Z m Z m Z m Z d  d l m Z m Z m Z d  d l m Z m Z m Z d  d l m Z d  d l j j  Z! d	 e" f d
 „  ƒ  YZ# d „  Z$ d „  Z% d „  Z& d „  Z' d „  Z( d „  Z) d „  Z* d „  Z+ d „  Z, d „  Z- d „  Z. d „  Z/ d „  Z0 d „  Z1 d „  Z2 d „  Z3 d „  Z4 d „  Z5 d „  Z6 d „  Z7 e ƒ  e ƒ  e ƒ  g Z8 d e" f d  „  ƒ  YZ9 d! „  Z: d" „  Z; d# „  Z< d$ „  Z= d% „  Z> d& „  Z? d' „  Z@ d( „  ZA d) „  ZB d* „  ZC d+ „  ZD d, „  ZE d- „  ZF i d d. d/ g d0 6d d. d1 g d2 6d d. d3 g d4 6d d5 g d6 6d e d7 d ƒ g d8 6d eH eI g d9 6d eH eI g d: 6ZJ e jK jL d; g  e! jM D] ZN eN eJ eN f ^ qôƒ e jK jO d< „  ƒ ƒ ZP d S(=   i    (   t   absolute_importt   divisiont   print_functiont   unicode_literalsN(   t   mock(   t   ColumnDataSourcet   CDSViewt   Marker(   t   CategoricalAxist
   LinearAxist   LogAxist   MercatorAxist   DatetimeAxis(   t   Range1dt   DataRange1dt   FactorRange(   t   LinearScalet   LogScalet   CategoricalScale(   t   Figuret   Test__get_legend_item_labelc           B` s5   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C` s,   i d  d 6} t j | ƒ d  k s( t ‚ d  S(   Nu   legend(   t   Nonet   bpht   _get_legend_item_labelt   AssertionError(   t   selft   kwargs(    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test_legend_None6   s    
c         C` s@   i i d d 6d 6} t  j | ƒ } | i d d 6k s< t ‚ d  S(   Nu   milku   fieldu   legend(   R   R   R   (   R   R   t   label(    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pytF   test_if_legend_is_something_exotic_that_it_is_passed_directly_to_label=   s    c         C` s9   i d d 6} t  j | ƒ } | i d d 6k s5 t ‚ d  S(   Nu   labelu   legendu   value(   R   R   R   (   R   R   R   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pytC   test_if_legend_is_a_string_but_no_source_then_label_is_set_as_valueD   s    
c         C` sU   i d d 6t  t d d d g ƒ ƒ d 6} t j | ƒ } | i d d 6k sQ t ‚ d  S(   Nu   labelu   legendR   i   i   u   sourceu   field(   R   t   dictR   R   R   (   R   R   R   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pytA   test_if_legend_is_a_string_and_source_with_that_column_then_fieldK   s
    c         C` sU   i d d 6t  t d d d g ƒ ƒ d 6} t j | ƒ } | i d d 6k sQ t ‚ d  S(   Nu   not_a_column_labelu   legendR   i   i   u   sourceu   value(   R   R   R   R   R   (   R   R   R   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pytD   test_if_legend_is_a_string_and_source_without_column_name_then_valueT   s
    (   t   __name__t
   __module__R   R   R   R    R!   (    (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyR   4   s
   					c       	   C` sS   t  j t ƒ # }  t j d d g d d d ƒWd  QXt |  ƒ j d ƒ sO t ‚ d  S(   Nu   au   bu   foot   fooi
   u2   Stack property 'foo' cannot appear in keyword args(   t   pytestt   raisest
   ValueErrorR   t   _single_stackt   strt   endswithR   (   t   e(    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt-   test__single_stack_raises_when_spec_in_kwargs\   s    "c          C` sh   t  j t ƒ 8 }  t j d d g d d d d g d d d	 d
 g ƒWd  QXt |  ƒ j d ƒ sd t ‚ d  S(   Nu   au   bu   foot   bazi   i   t   quuxi   i   i   u]   Keyword argument sequences for broadcasting must all be the same lengths. Got lengths: [2, 3](   R%   R&   R'   R   R(   R)   R*   R   (   R+   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt9   test__single_stack_raises_when_kwargs_list_lengths_differb   s    7c          C` sh   t  j t ƒ 8 }  t j d d d g d d d d g d d	 d
 g ƒWd  QXt |  ƒ j d ƒ sd t ‚ d  S(   Nu   au   bu   cu   fooR-   i   i   R.   i   i   uO   Keyword argument sequences for broadcasting must be the same length as stackers(   R%   R&   R'   R   R(   R)   R*   R   (   R+   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pytN   test__single_stack_raises_when_kwargs_list_lengths_and_stackers_lengths_differh   s    7c          C` s¸   d d d d g }  t  j |  d ƒ } t | ƒ t |  ƒ k sB t ‚ xo t | ƒ D]a \ } } t d d g ƒ t | j ƒ  ƒ k s… t ‚ t | d d j ƒ |  | d  k sO t ‚ qO Wd  S(	   Nu   au   bu   cu   du   startu   nameu   expri   (	   R   R(   t   lenR   t	   enumeratet   sett   keyst   listt   fields(   t   stackerst   kwst   it   kw(    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt+   test__single_stack_broadcast_with_no_kwargsn   s    *c          C` s  d d d d g }  t  j |  d d d d d	 ƒ} t | ƒ t |  ƒ k sN t ‚ x» t | ƒ D]­ \ } } t d d
 d d g ƒ t | j ƒ  ƒ k s— t ‚ t | d d j ƒ |  | d  k sÂ t ‚ | d
 d k sØ t ‚ | d d	 k sî t ‚ | d |  | k s[ t ‚ q[ Wd  S(   Nu   au   bu   cu   du   startR$   i
   t   baru   bazu   foou   baru   nameu   expri   (	   R   R(   R1   R   R2   R3   R4   R5   R6   (   R7   R8   R9   R:   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt/   test__single_stack_broadcast_with_scalar_kwargsv   s    0+c          C` s,  d d d d g }  t  j |  d d d d d	 d
 g d d ƒ} t | ƒ t |  ƒ k sZ t ‚ xË t | ƒ D]½ \ } } t d d d d g ƒ t | j ƒ  ƒ k s£ t ‚ t | d d j ƒ |  | d  k sÎ t ‚ | d d d d	 d
 g | k sô t ‚ | d d k s
t ‚ | d |  | k sg t ‚ qg Wd  S(   Nu   au   bu   cu   du   startR$   i
   i   i   i(   R<   u   bazu   foou   baru   nameu   expri   (	   R   R(   R1   R   R2   R3   R4   R5   R6   (   R7   R8   R9   R:   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt-   test__single_stack_broadcast_with_list_kwargs   s    *0+&c       	   C` s.  d d d d g }  t  j |  d d d d d	 d
 g d d d d ƒ} t | ƒ t |  ƒ k s` t ‚ xÇ t | ƒ D]¹ \ } } t d d d d g ƒ t | j ƒ  ƒ k s© t ‚ t | d d j ƒ |  | d  k sÔ t ‚ | d d d d	 d
 g | k sú t ‚ | d d k st ‚ | d d k sm t ‚ qm Wd  S(   Nu   au   bu   cu   du   startR$   i
   i   i   i(   R<   u   bazt   nameu   nameu   foou   baru   expri   (	   R   R(   R1   R   R2   R3   R4   R5   R6   (   R7   R8   R9   R:   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt2   test__single_stack_broadcast_name_scalar_overridesŒ   s    00+&c       	   C` sD  d d d d g }  d d d d g } t  j | d	 d
 d d d d g d d d |  ƒ} t | ƒ t | ƒ k sr t ‚ xË t | ƒ D]½ \ } } t d	 d d d g ƒ t | j ƒ  ƒ k s» t ‚ t | d	 d j ƒ | | d  k sæ t ‚ | d d d d d g | k st ‚ | d d k s"t ‚ | d |  | k s t ‚ q Wd  S(   Nu   aau   bbu   ccu   ddu   au   bu   cu   du   startR$   i
   i   i   i(   R<   u   bazR?   u   foou   baru   nameu   expri   (	   R   R(   R1   R   R2   R3   R4   R5   R6   (   t   namesR7   R8   R9   R:   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt0   test__single_stack_broadcast_name_list_overrides—   s    00+&c          C` s¨   t  j t ƒ & }  t j d d g d d d d ƒWd  QXt |  ƒ j d ƒ sR t ‚ t  j t ƒ & }  t j d d g d d d d ƒWd  QXt |  ƒ j d	 ƒ s¤ t ‚ d  S(
   Nu   au   bu   foou   barR$   i
   u2   Stack property 'foo' cannot appear in keyword argsR<   u2   Stack property 'bar' cannot appear in keyword args(   R%   R&   R'   R   t   _double_stackR)   R*   R   (   R+   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt-   test__double_stack_raises_when_spec_in_kwargs£   s    %%c          C` sk   t  j t ƒ ; }  t j d d g d d d d d g d d	 d
 d g ƒWd  QXt |  ƒ j d ƒ sg t ‚ d  S(   Nu   au   bu   foou   barR-   i   i   R.   i   i   i   u]   Keyword argument sequences for broadcasting must all be the same lengths. Got lengths: [2, 3](   R%   R&   R'   R   RC   R)   R*   R   (   R+   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt9   test__double_stack_raises_when_kwargs_list_lengths_differ®   s    :c          C` sk   t  j t ƒ ; }  t j d d d g d d d d d g d	 d
 d g ƒWd  QXt |  ƒ j d ƒ sg t ‚ d  S(   Nu   au   bu   cu   foou   barR-   i   i   R.   i   i   uO   Keyword argument sequences for broadcasting must be the same length as stackers(   R%   R&   R'   R   RC   R)   R*   R   (   R+   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pytN   test__double_stack_raises_when_kwargs_list_lengths_and_stackers_lengths_differ´   s    :c          C` så   d d d d g }  t  j |  d d ƒ } t | ƒ t |  ƒ k sE t ‚ x™ t | ƒ D]‹ \ } } t d d d g ƒ t | j ƒ  ƒ k s‹ t ‚ t | d d j ƒ |  |  k s² t ‚ t | d d j ƒ |  | d	  k sR t ‚ qR Wd  S(
   Nu   au   bu   cu   du   startu   endu   nameu   expri   (	   R   RC   R1   R   R2   R3   R4   R5   R6   (   R7   R8   R9   R:   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt+   test__double_stack_broadcast_with_no_kwargsº   s    -'c          C` s=  d d d d g }  t  j |  d d d d d	 d
 ƒ} t | ƒ t |  ƒ k sQ t ‚ xå t | ƒ D]× \ } } t d d d d d g ƒ t | j ƒ  ƒ k s t ‚ t | d d j ƒ |  |  k sÄ t ‚ t | d d j ƒ |  | d  k sï t ‚ | d d k st ‚ | d d
 k st ‚ | d |  | k s^ t ‚ q^ Wd  S(   Nu   au   bu   cu   du   startu   endR$   i
   R<   u   bazu   foou   baru   nameu   expri   (	   R   RC   R1   R   R2   R3   R4   R5   R6   (   R7   R8   R9   R:   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt/   test__double_stack_broadcast_with_scalar_kwargsÃ   s    !3'+c       	   C` sY  d d d d g }  t  j |  d d d d d	 d
 d g d d ƒ} t | ƒ t |  ƒ k s] t ‚ xõ t | ƒ D]ç \ } } t d d d d d g ƒ t | j ƒ  ƒ k s© t ‚ t | d d j ƒ |  |  k sÐ t ‚ t | d d j ƒ |  | d  k sû t ‚ | d d d	 d
 d g | k s!t ‚ | d d k s7t ‚ | d |  | k sj t ‚ qj Wd  S(   Nu   au   bu   cu   du   startu   endR$   i
   i   i   i(   R<   u   bazu   foou   baru   nameu   expri   (	   R   RC   R1   R   R2   R3   R4   R5   R6   (   R7   R8   R9   R:   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt-   test__double_stack_broadcast_with_list_kwargsÏ   s    -3'+&c       
   C` s[  d d d d g }  t  j |  d d d d d	 d
 d g d d d d ƒ} t | ƒ t |  ƒ k sc t ‚ xñ t | ƒ D]ã \ } } t d d d d d g ƒ t | j ƒ  ƒ k s¯ t ‚ t | d d j ƒ |  |  k sÖ t ‚ t | d d j ƒ |  | d  k st ‚ | d d d	 d
 d g | k s't ‚ | d d k s=t ‚ | d d k sp t ‚ qp Wd  S(   Nu   au   bu   cu   du   startu   endR$   i
   i   i   i(   R<   u   bazR?   u   nameu   foou   baru   expri   (	   R   RC   R1   R   R2   R3   R4   R5   R6   (   R7   R8   R9   R:   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt2   test__double_stack_broadcast_name_scalar_overridesÛ   s    33'+&c       
   C` sq  d d d d g }  d d d d g } t  j | d	 d
 d d d d d g d d d |  ƒ} t | ƒ t | ƒ k su t ‚ xõ t | ƒ D]ç \ } } t d	 d
 d d d g ƒ t | j ƒ  ƒ k sÁ t ‚ t | d	 d j ƒ | |  k sè t ‚ t | d
 d j ƒ | | d  k st ‚ | d d d d d g | k s9t ‚ | d d k sOt ‚ | d |  | k s‚ t ‚ q‚ Wd  S(   Nu   aau   bbu   ccu   ddu   au   bu   cu   du   startu   endR$   i
   i   i   i(   R<   u   bazR?   u   foou   baru   nameu   expri   (	   R   RC   R1   R   R2   R3   R4   R5   R6   (   RA   R7   R8   R9   R:   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt0   test__double_stack_broadcast_name_list_overridesç   s    33'+&c      	   C` sº   |  j  d t d g  ƒ ƒ } |  j  d t d g  d g  d g  ƒ ƒ } t j | | ƒ } t | d j j j ƒ  ƒ d d h k s‚ t ‚ t | d	 j j j ƒ  ƒ d d
 d d h k s¶ t ‚ d  S(   Nt   dataR$   t   startt   endR<   u   node_rendereru   indexu   foou   edge_rendereru   startu   endu   bar(	   t	   DataFrameR   R   t   _graphR3   t   data_sourceRL   R4   R   (   t   pdt   node_sourcet   edge_sourceR:   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt.   test__graph_will_convert_dataframes_to_sourcesô   s
    '.c       	   C` s®   t  d t d g  ƒ ƒ }  t  d t d g  d g  d g  ƒ ƒ } t j |  | ƒ } t | d j j j ƒ  ƒ d h k sy t ‚ t | d j j j ƒ  ƒ d	 d
 d h k sª t ‚ d  S(   NRL   R$   RM   RN   R<   u   node_rendereru   foou   edge_rendereru   startu   endu   bar(	   R   R   R   RP   R3   RQ   RL   R4   R   (   RS   RT   R:   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt)   test__graph_will_handle_sources_correctlyþ   s
    $+c          C` s@  t  d d d d d d d d d	 d
 d d ƒ }  t j i  i  |   } | d } | j j d k sd t ‚ | j j d k s| t ‚ | j j d k s” t ‚ | j j d k s¬ t ‚ | j	 j d
 k sÄ t ‚ | j j
 d k sÜ t ‚ | j j
 d k sô t ‚ | j j
 d k st ‚ | j j
 d k s$t ‚ | j	 j
 d k s<t ‚ d  S(   Nt   node_fill_coloru   purplet   node_selection_fill_coloru   bluet   node_nonselection_fill_coloru   yellowt   node_hover_fill_coloru   redt   node_muted_fill_coloru   oranget   node_radiusg333333ã?u   node_renderer(   R   R   RP   t   glypht
   fill_colorR   t   selection_glypht   nonselection_glypht   hover_glypht   muted_glypht   radius(   R   R:   t   r(    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt0   test__graph_properly_handle_node_property_mixins  s    
c          C` s@  t  d d d d d d d d d	 d
 d d ƒ }  t j i  i  |   } | d } | j j d k sd t ‚ | j j d k s| t ‚ | j j d k s” t ‚ | j j d k s¬ t ‚ | j	 j d
 k sÄ t ‚ | j j
 d k sÜ t ‚ | j j
 d k sô t ‚ | j j
 d k st ‚ | j j
 d k s$t ‚ | j	 j
 d k s<t ‚ d  S(   Nt   edge_line_coloru   purplet   edge_selection_line_coloru   bluet   edge_nonselection_line_coloru   yellowt   edge_hover_line_coloru   redt   edge_muted_line_coloru   oranget   edge_line_widthi   u   edge_renderer(   R   R   RP   R]   t
   line_colorR   R_   R`   Ra   Rb   t
   line_width(   R   R:   Rd   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt0   test__graph_properly_handle_edge_property_mixins  s    
t   Test__get_axis_classc           B` s  e  Z e j j d  e ƒ e j j d „  ƒ ƒ Z e j j d  e ƒ e j j d „  ƒ ƒ Z e j j d  e ƒ e j j d „  ƒ ƒ Z	 e j j d  e ƒ e j j d „  ƒ ƒ Z
 e j j d  e ƒ e j j d „  ƒ ƒ Z d „  Z e j j d  e ƒ e j j d „  ƒ ƒ Z RS(   u   rangec         C` sR   t  j d  | d ƒ d  i  f k s' t ‚ t  j d  | d ƒ d  i  f k sN t ‚ d  S(   Ni    i   (   R   t   _get_axis_classR   R   (   R   t   range(    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test_axis_type_None3  s    'c         C` sR   t  j d | d ƒ t i  f k s' t ‚ t  j d | d ƒ t i  f k sN t ‚ d  S(   Nu   lineari    i   (   R   Rp   R	   R   (   R   Rq   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test_axis_type_linear9  s    'c         C` sR   t  j d | d ƒ t i  f k s' t ‚ t  j d | d ƒ t i  f k sN t ‚ d  S(   Nu   logi    i   (   R   Rp   R
   R   (   R   Rq   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test_axis_type_log?  s    'c         C` sR   t  j d | d ƒ t i  f k s' t ‚ t  j d | d ƒ t i  f k sN t ‚ d  S(   Nu   datetimei    i   (   R   Rp   R   R   (   R   Rq   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test_axis_type_datetimeE  s    'c         C` s`   t  j d | d ƒ t i d d 6f k s. t ‚ t  j d | d ƒ t i d d 6f k s\ t ‚ d  S(   Nu   mercatori    u   lonu	   dimensioni   u   lat(   R   Rp   R   R   (   R   Rq   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test_axis_type_mercatorK  s    .c         C` s~  t  j d t ƒ  d ƒ t i  f k s* t ‚ t  j d t ƒ  d ƒ t i  f k sT t ‚ t  j d t ƒ  d ƒ t i  f k s~ t ‚ t  j d t ƒ  d ƒ t i  f k s¨ t ‚ t  j d t ƒ  d ƒ t i  f k sÒ t ‚ t  j d t ƒ  d ƒ t i  f k sü t ‚ t  j d t d t j d d d ƒ ƒ d ƒ t	 i  f k s;t ‚ t  j d t d t j d d d ƒ ƒ d ƒ t	 i  f k szt ‚ d  S(   Nu   autoi    i   RM   iâ  i   i   (
   R   Rp   R   R   R   R   R	   R   t   datetimeR   (   R   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test_axis_type_autoQ  s    ******?c      	   C` sV   t  j t ƒ  t j d | d ƒ Wd  QXt  j t ƒ  t j d | d ƒ Wd  QXd  S(   Nu   junki    i   (   R%   R&   R'   R   Rp   (   R   Rq   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test_axis_type_error\  s    (   R"   R#   R%   t   markt   parametrizet   _RANGESt   unitRr   Rs   Rt   Ru   Rv   Rx   Ry   (    (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyRo   1  s   	c          C` s‚   t  j t ƒ  d ƒ }  t |  t ƒ s* t ‚ t  j t ƒ  d ƒ }  t |  t ƒ sT t ‚ t  j t ƒ  d ƒ }  t |  t ƒ s~ t ‚ d  S(   Nu   linearu   datetimeu   auto(   R   t
   _get_scaleR   t
   isinstanceR   R   (   t   s(    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt)   test__get_scale_numeric_range_linear_axisd  s    c          C` s.   t  j t ƒ  d ƒ }  t |  t ƒ s* t ‚ d  S(   Nu   log(   R   R~   R   R   R   R   (   R€   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt&   test__get_scale_numeric_range_log_axisn  s    c          C` s.   t  j t ƒ  d ƒ }  t |  t ƒ s* t ‚ d  S(   Nu   auto(   R   R~   R   R   R   R   (   R€   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test__get_scale_factor_ranger  s    c          C` s(   t  j d  ƒ }  t |  t ƒ s$ t ‚ d  S(   N(   R   t
   _get_rangeR   R   R   R   (   Rd   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test__get_range_with_Nonev  s    c          C` sH   xA t  t t g D]0 }  |  ƒ  } t j | ƒ } | | k s t ‚ q Wd  S(   N(   R   R   R   R   R„   R   (   t   tt   rngRd   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test__get_range_with_Rangez  s    	c          C` sa   t  j t j d d g ƒ ƒ }  t |  t ƒ s3 t ‚ |  j d k sH t ‚ |  j d k s] t ‚ d  S(   Ni
   i   (	   R   R„   t   npt   arrayR   R   R   RM   RN   (   Rd   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test__get_range_with_ndarray€  s    c        	   C` s9   t  j t ƒ $ t j t j d d d g ƒ ƒ Wd  QXd  S(   Ni
   i   i   (   R%   R&   R'   R   R„   R‰   RŠ   (    (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt%   test__get_range_with_too_long_ndarray†  s    c          C` s^   t  j d d d d g ƒ }  t j |  ƒ } t | t ƒ s? t ‚ | j t |  ƒ k sZ t ‚ d  S(   Nu   Crosbyu   Stillsu   Nashu   Young(	   R‰   RŠ   R   R„   R   R   R   t   factorsR5   (   t   fRd   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt$   test__get_range_with_ndarray_factorsŠ  s    c         C` sa   t  j |  j d d g ƒ ƒ } t | t ƒ s3 t ‚ | j d k sH t ‚ | j d k s] t ‚ d  S(   Ni   i   (   R   R„   t   SeriesR   R   R   RM   RN   (   RR   Rd   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test__get_range_with_series  s    c      	   C` s9   t  j t ƒ $ t j |  j d d d g ƒ ƒ Wd  QXd  S(   Ni   i   i(   (   R%   R&   R'   R   R„   R   (   RR   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt$   test__get_range_with_too_long_series–  s    c          C` si   d d d g }  xS t  t g D]E } t j | |  ƒ ƒ } t | t ƒ sL t ‚ | j |  k s t ‚ q Wd  S(   Nu   foou   endu   baz(   R5   t   tupleR   R„   R   R   R   R   (   RŽ   R†   Rd   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   test__get_range_with_string_seqš  s
    c          C` s¦   t  j d ƒ }  t |  t ƒ s$ t ‚ |  j d k s9 t ‚ |  j d k sN t ‚ t  j d d g ƒ }  t |  t ƒ sx t ‚ |  j d k s t ‚ |  j d k s¢ t ‚ d  S(   Ng333333ó?i
   (   g333333ó?i
   (   R   R„   R   R   R   RM   RN   (   Rd   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt!   test__get_range_with_float_bounds¢  s    c         C` se   d d l  m } | j d ƒ } t j | ƒ } t | t ƒ sC t ‚ | j d d d g k sa t ‚ d  S(   Ni    (   t   flowersu   speciesu   setosau
   versicoloru	   virginica(	   t   bokeh.sampledata.irisR–   t   groupbyR   R„   R   R   R   R   (   RR   R–   t   gRd   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt    test_get_range_with_pandas_group­  s
    u    u	   test nameu   nameu   x rangeu   x_range_nameu   y rangeu   y_range_nameu   overlayu   levelt   sourceu   viewu   visibleu   mutedu
   arg,valuesc         C` s–   x | D]‡ } t  j d d t ƒj } t j t ƒ } | t ƒ  d d d d i | |  6| j \ } } |  | k r‚ | |  | k sˆ t ‚ Wd  QXq Wd  S(   Nu$   bokeh.plotting.helpers.GlyphRenderert   autospect   xi    t   y(	   R   t   patcht   TrueR   t   _glyph_functionR   R   t	   call_argsR   (   t   argt   valuest   valuet   gr_mockt   fnt   _R   (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt!   test__glyph_receives_renderer_argÀ  s    #(Q   t
   __future__R    R   R   R   R%   Rw   R   t   numpyR‰   t   bokeh.modelsR   R   R   t   bokeh.models.axesR   R	   R
   R   R   t   bokeh.models.rangesR   R   R   t   bokeh.models.scalesR   R   R   t   bokeh.plottingR   t   bokeh.plotting.helperst   plottingt   helpersR   t   objectR   R,   R/   R0   R;   R=   R>   R@   RB   RD   RE   RF   RG   RH   RI   RJ   RK   RU   RV   Re   Rn   R|   Ro   R   R‚   Rƒ   R…   Rˆ   R‹   RŒ   R   R‘   R’   R”   R•   Rš   R   t   FalseR    t   _renderer_args_valuesRz   R{   t   _RENDERER_ARGSR£   R}   R©   (    (    (    s@   lib/python2.7/site-packages/bokeh/plotting/tests/test_helpers.pyt   <module>   sr   " ((																		
				3	
												
2