
    |Le	                    l    d dl mZ d dlZd dlmZ d dlmZ d dlm	Z	m
Z
mZmZmZ d Zd Zd Zd	 Zd
 ZdS )    )annotationsN)	DataArray)dshape)
Dispatcherapplycalc_resisrealorient_arrayc                    t                      } |                     t          dd           |                     t          dd           |                     t          dd            G d d          } |            } | dd          dk    sJ  | dd	d
          dk    sJ  | dd	d
          d	k    sJ  | |d          dk    sJ d S )N   c                    | |z   |z   S N abcs      ;lib/python3.11/site-packages/datashader/tests/test_utils.py<lambda>z!test_Dispatcher.<locals>.<lambda>   s    A	     c                    | |z
  |z   S r   r   r   s      r   r   z!test_Dispatcher.<locals>.<lambda>   s    !a%!) r   c                    dS )N
   r   r   s      r   r   z!test_Dispatcher.<locals>.<lambda>   s    2 r   c                      e Zd ZdS )test_Dispatcher.<locals>.BarN)__name__
__module____qualname__r   r   r   Barr      s        r   r         g       @g      @g      @g      ?r   )r   )r   registerintfloatobject)foor   r   s      r   test_Dispatcherr'   	   s    
,,CLL111222LL333444LL---...       A3q!99>>>>3q#ss""""3sC$$$$3q!99??????r   c                     t          d          sJ t          t          d                    sJ t          d          sJ t          d          sJ t          d          rJ t          d          rJ d S )Nint32z?int32float64	complex64z{x: int64, y: float64})r	   r   r   r   r   test_isrealr,      s    '??&//"""""()k""""".///////r   c                     dd} t          | d          dk    sJ t          | dt          d                    dk    sJ d S )	Nr   r    c                    | |z   |z   |z   S r   r   )r   r   r   ds       r   fztest_apply.<locals>.f"   s    1uqy1}r   )r   r          )r      )r   dict)r0   s    r   
test_applyr5   !   s\       G!!!!GTAYYY''1,,,,,,r   c            
        ddg} ddg}ddgddgg}d}t          |t          | |          |          }t          |          \  }}|dk    sJ |d	k    sJ t          |t          | |d d d	                   |          }t          |          \  }}|dk    sJ |dk    sJ t          |t          | d d d	         |          |          }t          |          \  }}|d
k    sJ |d	k    sJ t          |t          | d d d	         |d d d	                   |          }t          |          \  }}|d
k    sJ |dk    sJ d S )N      r   r   yxr;   r:   coordsdimsr    )r   r4   r   )r;   r:   zr?   xarrxresyress          r   test_calc_resrF   (   s   	
AA	
AA
Q!QAD Qta1~~~D999D$JD$199992:::: Qta1TTrT7333$???D$JD$1999919999 Qta"g333$???D$JD$2::::2:::: Qta"g44R4999EEED$JD$2::::1999999r   c            
        ddg} ddg}t          j        ddgddgg          }d}t          |t          | |          |	          }t	          |          }t          j        ||          sJ t          |t          | |d d d
                   |	          }t	          |          }t          j        ||d d d
                   sJ t          |t          | d d d
         |          |	          }t	          |          }t          j        ||d d d d d
f                   sJ t          |t          | d d d
         |d d d
                   |	          }t	          |          }t          j        ||d d d
d d d
f                   sJ d S )Nr7   r8   r   r   r    r2   r9   r<   r=   r@   )nparrayr   r4   r
   array_equal)r;   r:   rB   r?   rC   arrs         r   test_orient_arrayrL   G   s   	
AA	
AA
1a&1a&!""AD Qta1~~~D999D
t

C>#q!!!!! Qta1TTrT7333$???D
t

C>#q2w''''' Qta"g333$???D
t

C>#qDDbDz***** Qta"g44R4999EEED
t

C>#q2ttt}-------r   )
__future__r   numpyrH   xarrayr   datashader.datashaper   datashader.utilsr   r   r   r	   r
   r'   r,   r5   rF   rL   r   r   r   <module>rR      s    " " " " " "           ' ' ' ' ' ' N N N N N N N N N N N N N N  0 0 0- - -  >. . . . .r   