
    d                    >   d dl mZ d dlZd dlZd dlZd dlZd dl	m
Z ej        d             Zej        d             Zej        d             Zej        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dZddZddZddZddZddZ dS )    )annotationsN)formatting_htmlc                     t          j        t          j                            d                              dd                    S )Nr         )xr	DataArraynprandomRandomStaterandn     Alib/python3.11/site-packages/xarray/tests/test_formatting_html.py	dataarrayr      s2    <	--a0066q!<<===r   c                R    t          j        d           |                                 S )Ndask)pytestimportorskipchunk)r   s    r   dask_dataarrayr      s#    
??r   c                 ~    t           j                            ddgddggd          } t          j        i d| i          S )Nab      )level_1level_2)namesx)pd
MultiIndexfrom_productr   Dataset)mindexs    r   
multiindexr&      sI    ]''
saV$: (  F :b3-(((r   c                    t          j        ddd          } t          j        dt          j        z  | j        j        dz  dz
  z            }dd	|                    d
d          z  z   }|dt          j        	                    |j
        d          z  z   }|dz   dt          j        	                    |j
        d          z  z   }t          j        d|fd|fd| g ddddi          S )Nz
2000-01-01z
2001-12-31time)namer   g     v@gQ?
      r      )r(   location)tmintmax)z<IA>INILdescriptionz
Test data.)attrs)r!   
date_ranger
   sinpi	dayofyearvaluesreshaper   r   sizer   r$   )timesannual_cyclebasetmin_valuestmax_valuess        r   datasetrA      s    M,6BBBE6!be)u'='F'MNOOL\))"a0000DRY__\->BBBBK)a")//,2CQ"G"GGGK:);7);7	
 	
 $8$8$899l+   r   returnNonec                \    t          j        |           }|                    d          sJ d S )Nz
<pre>array)fhshort_data_repr_html
startswith)r   	data_reprs     r   test_short_data_repr_htmlrI   1   s2    '	22I-------r   c                ^    |                      dd i          }t          j        |           d S )Nr   c                    | d         S )Nr/   r   )r    s    r   <lambda>z8test_short_data_repr_html_non_str_keys.<locals>.<lambda>7   s
    ai r   )assignrE   dataset_repr)rA   dss     r   &test_short_data_repr_html_non_str_keysrP   6   s2    	//0	1	1BOBr   c                    t          | j        d          sJ t          j        |           }|| j                                        k    sJ d S )N_repr_html_)hasattrdatarE   rF   rR   )r   rH   s     r   test_short_data_repr_html_daskrU   ;   sQ    >&66666'77I+7799999999r   c                 H    i } g }t          j        | |          }|dk    sJ d S )N rE   format_dimsdimsdims_with_index	formatteds      r   test_format_dims_no_dimsr^   A   s.    DOt_55I??????r   c                 J    ddd} g }t          j        | |          }d|v sJ d S )Nr-   r   z<x>yz	&lt;x&gt;rX   rZ   s      r    test_format_dims_unsafe_dim_namerb   H   s<    1DOt_55I)######r   c                 L    ddddg}} t          j        | |          }d|vsJ d S )Nr-   r   r    ra   r(   class='xr-has-index'rX   rZ   s      r   test_format_dims_non_indexrf   O   s=    "#!,,vh/Dt_55I!222222r   c                 L    ddddg}} t          j        | |          }d|v sJ d S )Nr-   r   rd   r    re   rX   rZ   s      r   test_format_dims_indexrh   U   s=    "#!,,se/Dt_55I!Y......r   c                 h    ddd} t          j        |           }d|v sJ d|v sJ d|v sJ d|v sJ d S )Nr-   z<pd.DataFrame>r`   z!<dt><span>&lt;x&gt; :</span></dt>z<dt><span>y :</span></dt>z
<dd>3</dd>z<dd>&lt;pd.DataFrame&gt;</dd>)rE   summarize_attrs)r4   r]   s     r   4test_summarize_attrs_with_unsafe_attr_name_and_valuerk   [   sj    ,--E"5))I.);;;;&)33339$$$$*i777777r   c                   t          j        |           }d|v sJ |                    d          dk    sJ |                    d          dk    sJ t          j        d          5  t          j        |           }d|v sJ |                    d          dk    sJ |                    d          dk    sJ 	 d d d            d S # 1 swxY w Y   d S )	Ndim_0z,class='xr-array-in' type='checkbox' checked>r   z8class='xr-section-summary-in' type='checkbox' disabled >r-   F)display_expand_datar   )rE   
array_reprcountr   set_options)r   r]   s     r   test_repr_of_dataarrayrr   d   sG   i((Ii??IJJaOOOO 	RSSWXXXXX 
E	2	2	2 	
 	
M),,	)####MNNRSSSSS OOVWW    	
 	
 	
 	
 	
 	
 	
 	
 	
 	
 	
 	
 	
 	
 	
 	
 	
 	
s   &ACC	C	c                :    t          j        |           }d|v sJ d S )Nz(x)rE   rN   )r&   r]   s     r   test_repr_of_multiindexru   z   s(    
++IIr   c                   t          j        |           }|                    d          dk    sJ |                    d          dk    sJ d|v sd|v sJ d|v sJ t          j        dddd	
          5  t          j        |           }|                    d          dk    sJ d|v sd|v sJ d|v sJ 	 d d d            d S # 1 swxY w Y   d S )Nz7class='xr-section-summary-in' type='checkbox'  checked>r-   z0class='xr-section-summary-in' type='checkbox'  >r   z&lt;U4z&gt;U4z
&lt;IA&gt;FT)display_expand_coordsdisplay_expand_data_varsdisplay_expand_attrsdisplay_expand_indexes)rE   rN   rp   r   rq   rA   r]   s     r   test_repr_of_datasetr|      sq   ((I 	QRRVWWWWW ??MNNRSSSSSy  H	$9$9$9$99$$$$	#!&"#	
 
 
 ) ) OG,,	 OOUVV    9$$I(=(=(=(=y((((() ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )s   3A CCCc                :    t          j        |           }d|v sJ d S )Nz#<pre class='xr-text-repr-fallback'>rt   r{   s     r   test_repr_text_fallbackr~      s*    ((I 1I======r   c                 t   t          j        ddgg dg dgddi          } t          | d          sJ t          j        d	          5  |                                                                 }d d d            n# 1 swxY w Y   |                    d
          r|                    d          sJ d|v sJ d S )Nr(   r    r   r   r-   r      r   foobarrR   htmldisplay_stylez<divz</div>zxarray.Variable)r   VariablerS   rq   rR   striprG   endswithvr   s     r   test_variable_repr_htmlr      s   
VSMIIIyyy#9E5>JJA1m$$$$$	f	-	-	- ' '}}$$&&' ' ' ' ' ' ' ' ' ' ' ' ' ' '
 ??6"">t}}X'>'>>>>$$$$$$   'A;;A?A?c                    |                                  }d|j        d<   |d         |d<   t          j        |          }d|v sJ d|v sJ d S )Nz
Test valuer   r/   r   z,<dt><span>1 :</span></dt><dd>Test value</dd>z'<div class='xr-var-name'><span>2</span>)copyr4   rE   rN   )rA   rO   r]   s      r   test_repr_of_nonstr_datasetr      s^    	BBHQKvJBqE##I9YFFFF4	AAAAAAr   c                    |                      d          }d|j        d<   t          j        |          }d|v sJ d|v sJ d S )Nr+   )rm   valuer   z'<dt><span>1 :</span></dt><dd>value</dd>z<li><span>15</span>: 4</li>)renamer4   rE   ro   )r   dar]   s      r   test_repr_of_nonstr_dataarrayr      sZ    					#	#BBHQKb!!I4	AAAA(I555555r   c                 (   t          j        ddgg dg dgddi          } t          | d          sJ t          j        d	          5  |                                                                 }d d d            n# 1 swxY w Y   d
|v sJ d|v sJ d S )Nr(   r*   r   r      r   rR   r   r   z&<dt><span>22 :</span></dt><dd>bar</dd>z <li><span>10</span>: 3</li></ul>)r   r   rS   rq   rR   r   r   s     r   test_nonstr_variable_repr_htmlr      s    
VRL999iii"82u+FFA1m$$$$$	f	-	-	- ' '}}$$&&' ' ' ' ' ' ' ' ' ' ' ' ' ' '3t;;;;-555555r   )rB   rC   )!
__future__r   numpyr
   pandasr!   r   xarrayr   xarray.corer   rE   fixturer   r   r&   rA   rI   rP   rU   r^   rb   rf   rh   rk   rr   ru   r|   r~   r   r   r   r   r   r   r   <module>r      s   " " " " " "              - - - - - - > > >   
 ) ) )   $. . . .
   
: : : :   $ $ $ $3 3 3 3/ / / /8 8 8 8
 
 
 
,   
) ) ) )6> > > >	% 	% 	% 	%B B B B6 6 6 66 6 6 6 6 6r   