o
    1ήc                     @   s8   d dl Z d dlZd dlZe jddd Zdd ZdS )    Nerrorc                  C   sZ   G dd d} | t d}tjtdd t | W d    d S 1 s&w   Y  d S )Nc                   @   s4   e Zd Zdd Zdd Zdd Zdd Zd	d
 ZdS )z%test_getattr_warning.<locals>.Wrapperc                 S   s
   || _ d S N)array)selfr    r   F/tmp/pip-target-vg8gfxp4/lib/python/numpy/core/tests/test_protocols.py__init__      
z.test_getattr_warning.<locals>.Wrapper.__init__c                 S   s
   t | jS r   )lenr   r   r   r   r   __len__   r	   z-test_getattr_warning.<locals>.Wrapper.__len__c                 S   s   t | | j| S r   )typer   )r   itemr   r   r   __getitem__      z1test_getattr_warning.<locals>.Wrapper.__getitem__c                 S   s&   | drtjdtdd t| j|S )N__array_object got converted   )
stacklevel)
startswithwarningswarnUserWarninggetattrr   )r   namer   r   r   __getattr__   s   
z1test_getattr_warning.<locals>.Wrapper.__getattr__c                 S   s   dj | dS )Nz<Wrapper({self.array})>r   )formatr   r   r   r   __repr__   s   z.test_getattr_warning.<locals>.Wrapper.__repr__N)__name__
__module____qualname__r   r   r   r   r   r   r   r   r   Wrapper
   s    r!   
   r   )match)nparangepytestraisesr   asarray)r!   r   r   r   r   test_getattr_warning   s
   "r)   c                  C   sF   G dd d} |  }t j|td}|jdksJ |d | jks!J d S )Nc                   @   s   e Zd ZdZdddZdS )z"test_array_called.<locals>.Wrapperd0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000Nc                 S   s   t j| jgtdS )Ndtype)r$   r   valobject)r   resultr   r   r   	__array__%   r   z,test_array_called.<locals>.Wrapper.__array__r   )r   r   r    r-   r0   r   r   r   r   r!   #   s    r!   r+   U100r   )r$   r   strr,   r-   )r!   wrappedarrr   r   r   test_array_called"   s
   r5   )r&   r   numpyr$   markfilterwarningsr)   r5   r   r   r   r   <module>   s    

