
    k hT                        d dl Zd dlZd dlmZmZ d dlmZ ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  gZeej"                  ej$                  gz   Zej(                  j+                  de      ej(                  j+                  de      ej(                  j+                  dddg      d	                      Zd
 Zd Zd Zd Zd Zy)    N)	map_arrayArrayMap)testingdtype_in	dtype_out	out_arrayTFc                    t        j                  g d|       }t        j                  g d|       d d d   }t        j                  g d|      d d d   }t        j                  g d|      }d }|r"t        j                  |j                  d|      }t	        ||||      }t         j
                  j                  ||       |j                  |k(  sJ |r||u sJ y y )	N)r      r            r   dtype)   r
   r   r      )r         	   
   )r   r   r   r   r   r   r      )	input_arr
input_valsoutput_valsout)nparrayfullshaper   r   assert_array_equalr   )	r   r   r   r   r   r   desiredr   results	            }/home/developers/rajanand/mypropertyqr-fmb-refixing-v2/venv/lib/python3.12/site-packages/skimage/util/tests/test_map_array.pytest_map_array_simpler$      s     .h?I/:4R4@J((+9=ddCKhh,I>G
CgggmmRy9
QTF JJ!!&'2<<9$$$f}}     c                     t         j                  j                  ddd      } t        j                  d      }t        j                  |       }t         j                  j                  |j
                        j                  |j                        }t        j                  t              5  t        | |||       d d d        y # 1 sw Y   y xY w)Nr   r         size)r(   r(   r   r   randomrandintemptyuniquer   astyper   r   raises
ValueErrorr   labelsr   	in_values
out_valuess       r#   %test_map_array_incorrect_output_shaper9   *   s    YYq!(3F
((8
C		&!I!!)//299#))DJ	
	# :&)ZS9: : :s   (CC
c                     t         j                  j                  ddd      } t        j                  d      d d dd d df   }t        j                  |       }t         j                  j                  |j
                        j                  |j                        }t        j                  t              5  t        | |||       d d d        y # 1 sw Y   y xY w)	Nr   r   r'   r*   )H   2   r   r
   r,   r-   r5   s       r#   *test_map_array_non_contiguous_output_arrayr=   3   s    YYq!(3F
((#
$SqS#A#X
.C		&!I!!)//299#))DJ	
	# :&)ZS9: : :s   3CCc                  F   t         j                  j                  ddd      } t        j                  |       }t         j                  j                  |j                        }t        ||      }t        t        |      j                  d            |j                  dz   k(  sJ y )Nr   (   r'   r*   
r
   )
r   r.   r/   r1   r   r   lenstrsplit_max_str_lines)r6   r7   r8   ms       r#   test_arraymap_long_strrF   <   sz    YYq"84F		&!I!!)//2JJ'As1v||D!"a&6&6&::::r%   c                     t        j                  t         j                  j                  ddd            } t         j                  j                  t	        |             }t        | |      }t         j                  j                  dt	        |      d      }t        j                  ||   dk        sJ |dd xxx dz  ccc t        j                  ||   dk\        sJ y )Nr      r   r*   r      rJ   )r   r1   r.   r/   rA   r   all)r7   r8   rE   images       r#   test_arraymap_updaterM   D   s    		"))++As+;<I!!#i.1JJ'AIIaQj9E66!E(Q,abEQJE66!E(a-   r%   c                     t        j                  t         j                  j                  ddd            } t         j                  j                  t	        |             }t        | |      }t         j                  j                  dt	        |       d      }t        j                  ||   dk        sJ t        j                  t	        |      t              }d|d<   ||xx   dz  cc<   t        j                  ||   dk\        sJ y )	Nr   rH   r   r*   r   rI   r   F)	r   r1   r.   r/   rA   r   rK   onesbool)r7   r8   rE   rL   positives        r#   test_arraymap_bool_indexrR   N   s    		"))++As+;<I!!#i.1JJ'AIIaYjAE66!E(Q,wws1vT*HHQKhK1K66!E(a-   r%   )numpyr   pytestskimage.util._map_arrayr   r   skimage._sharedr   uint8uint16uint32uint64int8int16int32int64_map_array_dtypes_infloat32float64_map_array_dtypes_outmarkparametrizer$   r9   r=   rF   rM   rR    r%   r#   <module>rf      s      7 # HHIIIIIIGGHHHHHH	  -

BJJ/GG  %9:&;<tUm4 5 = ;"::;!	!r%   