U
    Cvf                     @  sP   d dl mZ d dlZd dlmZ G dd deZG dd dZdd	d
dZdS )    )annotationsN)robust_getitemc                   @  s   e Zd ZdS )DummyFailureN)__name__
__module____qualname__ r   r   E/tmp/pip-unpacked-wheel-h316xyqg/xarray/tests/test_backends_common.pyr      s   r   c                   @  s   e Zd Zdd Zdd ZdS )
DummyArrayc                 C  s
   || _ d S )Nfailures)selfr   r   r   r	   __init__   s    zDummyArray.__init__c                 C  s   | j r|  j d8  _ tdS )N   success)r   r   )r   keyr   r   r	   __getitem__   s    zDummyArray.__getitem__N)r   r   r   r   r   r   r   r   r	   r
      s   r
   None)returnc               	   C  sz   t dd} tt | d  W 5 Q R X t| dtdd}|dksDtt dd} tt t| dtddd W 5 Q R X d S )	N   r   .r   )catchinitial_delayr      )r   r   max_retries)r
   pytestZraisesr   r   AssertionError)arrayresultr   r   r	   test_robust_getitem   s    

r   )	
__future__r   r   Zxarray.backends.commonr   	Exceptionr   r
   r   r   r   r   r	   <module>   s
   