
    a6d	                     b    d dl Zd dlmZ d dlmZ d dlmZ d dlm	Z	 d Z
d Zd Zd	 Zd
 Zd ZdS )    N)dtype_limits)dtype_range)invert)assert_array_equalc                      d} t          j        d|           }t          |d          d         }||dd d f<   t          j        d|           |z   }d|dd d f<   t          |          }t	          ||           d S )Nbool   r
   dtypeFclip_negative   r   npzerosr   r   r   r   imageupper_dtype_limitexpectedresults        >lib/python3.11/site-packages/skimage/util/tests/test_invert.pytest_invert_boolr   	   s    EHV5)))E$U%@@@C#E!QQQ$Kxe,,,/@@HHQTNE]]Fx(((((    c                      d} t          j        d|           }t          |d          d         }||dd d f<   t          j        d|           |z   }d|dd d f<   t          |          }t	          ||           d S )Nuint8r	   r   Fr   r   r   r   r   s        r   test_invert_uint8r      s    EHV5)))E$U%@@@C#E!QQQ$Kxe,,,/@@HHQTNE]]Fx(((((r   c                  "   d} t          j        d|           }t          |d          \  }}||dd d f<   ||dd d f<   t          j        d|           }||dd d f<   ||dd d f<   d|d	d d f<   t          |          }t	          ||           d S )
Nint8r	   r   Fr   r      r   r   r   r   lower_dtype_limitr   r   r   s         r   test_invert_int8r$      s    EHV5)))EU%000 )(#E!QQQ$K#E!QQQ$Kxe,,,H&HQTN&HQTNHQTNE]]Fx(((((r   c                     d} t          j        d|           }t          |d          \  }}||dd d f<   ||dd d f<   t          j        d|           }||dd d f<   ||dd d f<   t          |d	          }t	          ||           d S )
Nfloat64r	   r   Fr   r   r    T)signed_floatr   r"   s         r   test_invert_float64_signedr(   .   s    EHV5)))EU%000 )(#E!QQQ$K#E!QQQ$Kxe,,,H&HQTN&HQTNE---Fx(((((r   c                      d} t          j        d|           }t          |d          \  }}||dd d f<   t          j        d|           }||dd d f<   ||dd d f<   t          |          }t	          ||           d S )	Nr&   r	   r   Tr   r    r   r   r   r"   s         r   test_invert_float64_unsignedr*   <   s    EHV5)))EU$/// )(#E!QQQ$Kxe,,,H&HQTN&HQTNE]]Fx(((((r   c                      t          j                    D ]G\  } }t          j        ||           }t	          t	          |                    }t          ||           Hd S )Nr   )r   itemsr   arrayr   r   )tlimitsr   r   s       r   test_invert_roundtripr0   I   sb     &(( , ,	6q)))&--((5(++++, ,r   )numpyr   skimager   skimage.util.dtyper   skimage.utilr   skimage._shared.testingr   r   r   r$   r(   r*   r0    r   r   <module>r7      s                    * * * * * *       6 6 6 6 6 6) ) )) ) )) ) )) ) )
) 
) 
), , , , ,r   