HOME


sh-3ll 1.0
DIR:/usr/local/lib/python3.6/site-packages/xarray/test/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.6/site-packages/xarray/test/__pycache__/test_combine.cpython-36.pyc
3

���hJ2�@s�ddlmZddlZddlZddlmZmZm	Z	m
Z
mZddlm
Z
mZddlmZmZmZddlmZGdd	�d	e�ZGd
d�de�ZdS)�)�deepcopyN)�Dataset�	DataArray�auto_combine�concat�Variable)�	iteritems�OrderedDict�)�TestCase�InaccessibleArray�
requires_dask)�create_test_datac@s`eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zedd��Z
dS)�TestConcatDatasetcsFt�jd���jtd�d��jtdd�d�g}|j�t|d���fdd�}x�dD]҉dd	��j�d
d�D�}|j�t|���|j�t|����|j�t|��dd
��dd	��j�dd�D�}�fdd	�t�j�D�}t|��|d
�}|j�||��t|��dd
�}|j�||��qRWdt	j
d�f�jd<x�dD]��dd	��j�dd�D�}t|��dd
�}t	j�fdd	�t�j
��D��}|j|dj|�t|��dd
�}|j�d|d�t|��dd
�}|j�d|d��qBWd�djd��dd	��jdd
d�D�}�j�}�|d<|j|t|���dS)NZdim3�)�dim1rcs*tt�fdd�t|j�D��|j|jd�S)Nc3s&|]\}}||j�|j�fVqdS)N)Z	transpose�dims)�.0�k�v)�data��8/tmp/pip-build-5_djhm0z/xray/xarray/test/test_combine.py�	<genexpr>szKTestConcatDataset.test_concat.<locals>.rectify_dim_order.<locals>.<genexpr>)�attrs)r�dictr�	data_vars�coordsr)Zdataset)rrr�rectify_dim_ordersz8TestConcatDataset.test_concat.<locals>.rectify_dim_order�dim2cSsg|]\}}|�qSrr)r�_�grrr�
<listcomp> sz1TestConcatDataset.test_concat.<locals>.<listcomp>F)Zsqueeze�minimal)rcSsg|]\}}|�qSrr)rr r!rrrr"'sTcs&g|]\}}�|jkr|�kr|�qSr)r)rrr)�dimrrr"(s�	differentZdim4�extracSsg|]\}}|�qSrr)rr r!rrrr"3s�allcsg|]}�dj�qS)r&)�values)rr )rrrr"5s�cSsg|]\}}|�qSrr)rr r!rrrr"As)rr)rr)r�drop�isel�slice�assertDatasetIdenticalr�groupbyrr�npZarange�array�rangerZassertArrayEqualr(�assertDataArrayEqual�rename�copy)�self�
split_datarZdatasets�concat_over�actual�expectedr)rr$r�test_concatsD

zTestConcatDataset.test_concatcCsrtddtjjd�fi�}|jtd�d�|jtdd�d�g}x2dddgdggD]}t|d|d	�}|j||�qLWdS)
N�foo�x�
�)r<r#r%r')r$r)rr/�random�randnr+r,rr-)r5r�objsrr8rrr�test_concat_data_varsFs
"z'TestConcatDataset.test_concat_data_varsc
Cs�tddtjjd�fi�}|jddgddgdfd�}|jtd�d�jdd�|jtdd�d�jdd�g}x.d	d
dggD]}t|d|d�}|j||�qxWx6d
ggD]*}|j	t
d��t|d|d�WdQRXq�WdS)Nr;r<r=rr>r
)�c)r<r%r'rC)r$rr#znot equal across)rr/r?r@Z
assign_coordsr+r,rr-�assertRaisesRegexp�
ValueError)r5rr9rArr8rrr�test_concat_coordsMs z$TestConcatDataset.test_concat_coordscCs�tddiddi�}tddiddi�}tdddgfddgd��}x2dddggD]"}t||gd|d	�}|j||�qLW|jtd
��t||gddd	�WdQRXdS)Nr;g�?�yr
g@)r;rGr%r')rznot equal across datasetsr#)rrr-rDrE)r5Zds1Zds2r9�moder8rrr�test_concat_constant_indexYsz,TestConcatDataset.test_concat_constant_indexcCsVt�}|jtdd�d�|g}t|d�}|j||�t|ddd�d�}|j||�dS)Nr)rrr
���)rr+r,rr-)r5rr6r8rrr�test_concat_size0ds
z#TestConcatDataset.test_concat_size0cYCs�t�}|jtd�d�|jtdd�d�g}|jtd��tgd�WdQRX|jtd��t||gddgd�WdQRX|jtd	��.t|�\}}d
|jd<t||gddd
�WdQRX|j|t||gddd
��|jtd��4t|�\}}d
t	j
jd�f|d<t||gd�WdQRX|jtd��4t|�\}}d|d|d<t||gddd�WdQRX|jtd��t||gd�WdQRX|jtd��t|ddd
�WdQRX|jtd��t||gddd�WdQRX|jtd��(ttddi�tddgi�gdd�WdQRX|jtd��(ttddi�tiddi�gdd�WdQRX|jtd��t||gdd d!�WdQRX|jtd��t||gdd d"�WdQRXdS)#Nr)rzmust supply at least onerzare not coordinatesZnew_dim�	not_found)rzglobal attributes not�barr;�	identical)�compat�equalszencountered unexpectedr=znot equal across datasetsr)rr#zit is not 1-dimensionalzcompat.* invalidZfoobarzunexpected value forz*coordinate in some datasets but not othersr<rr
�z)r$zno longer a validr%)rH)r7)
rr+r,rDrErrrr-r/r?r@r)r5rr6Zdata0Zdata1rrr�test_concat_errorsmsJ

,
,z$TestConcatDataset.test_concat_errorscCs�tiddi�tddgi�g}t|d�}tdddgi�}|j||�tddgi�tiddi�g}t|d�}|j||�tdgdd��tdgdd��g}t|d�}tddgdddgfd��}|j||�tddgid	di�tddgid	ddgfi�g}t|d�}tdddgid	dd
dgfi�}|j||�tddgid	di�tdddgid	di�g}t|d�}tid	ddddgfi�}|j||�td
ddgfidgdgd��td
d	dgfidgdgd��g}t|d�}td
ddgdggfi�}|j||�dS)Nr<rr
r)r)r<rG�r>rGrQrJ���rJrTrJrTrJrTrTrJ)r<rGrJ)rrr-)r5rAr8r9rrr�test_concat_promote_shape�s4

 


 
z+TestConcatDataset.test_concat_promote_shapecCs�tdddgfiddi�tdddgfiddi�g}tddddgfidddgd��}t|d�}|j||�tdddgfiddi�tdddgfiddi�g}|jt��t|ddd	�WdQRXdS)
NrG�tr
r<r)r)r<rVr#)r)rrr-�assertRaisesrE)r5rAr9r8rrr�test_concat_do_not_promote�s 
z,TestConcatDataset.test_concat_do_not_promotecCsZtddi�tddi�g}tdddg�}tdddgfddgd��}t||�}|j||�dS)Nr<rr
rGrrS)r<rG)rrrr-)r5rAZcoordr9r8rrr�test_concat_dim_is_variable�s

z-TestConcatDataset.test_concat_dim_is_variablecCs�tddgi�tddgi�g}t|�}tdddgi�}|j||�t|g�}|j||�tdddgi�tddgi�g}t|�}tddddgi�}|j||�ttdddgffdddgffg��ttdddgffdddgffg��g}t|�}tdddgfdddgfddgd��}|j||�tdgdgd��tdgdgd	��g}|jtd
��t|�WdQRXtddi�tddi�g}|jtd��t|�WdQRXtdgdgd��tddgi�g}|jt��t|�WdQRXdS)Nr<rr
r)�arG)r<rGrZ)r<rG)rGr<ztoo many .* dimensionszcannot infer dimension)rrr-r	rDrErW�KeyError)r5rAr8r9rrr�test_auto_combine�s0
"&$$ z#TestConcatDataset.test_auto_combineN)�__name__�
__module__�__qualname__r:rBrFrIrKrRrUrXrYr
r\rrrrr
s8	2&
rc@s eZdZdd�Zedd��ZdS)�TestConcatDataArraycCs�tddgtjjd�fddgtjjd�fd��}|d}|d}ttj|j|jg�dddgd	�}t||gd�}|j||�d
d�|jd�D�}t||d�}|j	||�t||j
d�}|j	||�t|d|d
gtjdd
g��j
dd�}|dd�jddi�}|j	||�t|d|d
gdd
g�j
dd�}|dd�jddi�}|j	||�|jtd��t||gddd�WdQRX|jtd��t||gddd�WdQRXdS)Nr<rGr=�)r;rMr;rM�w)rcSsg|]\}}|�qSrr)rr r!rrrr"	sz3TestConcatDataArray.test_concat.<locals>.<listcomp>rr
T)r*r)Z
concat_dimz
not identicalrN)r$rOznot a valid argumentr#)r$r)r=ra)r=ra)rr/r?rr0r(rr2r.ZassertDataArrayIdentical�indexes�pd�IndexZreset_coordsr3rDrE)r5Zdsr;rMr9r8ZgroupedZstackedrrrr:�s.("zTestConcatDataArray.test_concatcsLddlj��fdd�td�D�}t|dd�}|j|jd
�|j|jd�dS)Nrcs.g|]&}t�jttjd��d�ddgd��qS)rr<rG)r)rr)rZ
from_arrayrr/�zeros)rr )�darrr""sz8TestConcatDataArray.test_concat_lazy.<locals>.<listcomp>r)rQ)r$rr<rG)r)rr)rQr<rG)Z
dask.arrayr0r1rZassertEqual�shaper)r5ZarraysZcombinedr)rgr�test_concat_lazys

z$TestConcatDataArray.test_concat_lazyN)r]r^r_r:r
rirrrrr`�s!r`)r4rZnumpyr/ZpandasrdZxarrayrrrrrZxarray.core.pycompatrr	�rrr
Ztest_datasetrrr`rrrr�<module>sp