
    tKg0                     X    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mZ  G d d      Zy)    N)assert_array_equal)raises)
axis_sliceaxis_reverseodd_exteven_ext	const_extzero_extc                   0    e Zd Zd Zd Zd Zd Zd Zd Zy)TestArrayToolsc                    t        j                  d      j                  dd      }t        |ddd      }t	        ||ddd d f          t        |dd      }t	        ||dd d d f          t        |ddd      }t	        ||d d ddf          t        |dd      }t	        ||d d dd f          t        |dd	d
      }t	        ||d d d	d d f          t        |dd	d
      }t	        ||d d d d d	f          y )N         r      )startstopaxis)r   r      )r   stepr   )nparangereshaper   r   )selfass      g/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/scipy/signal/tests/test_array_tools.pytest_axis_slicezTestArrayTools.test_axis_slice   s    IIbM!!!Q'q21a!Qi(q+1aQi(q21a1Q3i(q+1a23i(q21a!Qi(q21a3Q3i(    c                     t        j                  d      j                  dd      }t        |d      }t	        ||d d dd d f          t        |d      }t	        ||d d d d df          y )Nr   r   r   r   r   r   r   )r   r   r   r   r   )r   r   rs      r   test_axis_reversez TestArrayTools.test_axis_reverse!   s`    IIbM!!!Q'#1a"aj)#1a4R4j)r    c                 z   t        j                  g dg dg      }t        |dd      }t        j                  g dg dg      }t        ||       t        |dd      }t        j                  g d	g dg dg d
g      }t        ||       t	        t
        t        |dd       t	        t
        t        |dd       y )Nr   r   r   r      	            r'   r   r   r"   )	r   r   r   r   r   r   r'   r,   r+   )	   
   r)   r*   r+   r,   r'   r   r   r   )ir   r   r'   )      r-   r*   r'   r'   )r   arrayr   r   assert_raises
ValueError)r   r   oddexpecteds       r   test_odd_extzTestArrayTools.test_odd_ext*   s    HHo%' ( a#889:< =3)a#88/,,/1 2 	3)j'1aa8j'1aa8r    c                 z   t        j                  g dg dg      }t        |dd      }t        j                  g dg dg      }t        ||       t        |dd      }t        j                  g dg dg dg dg      }t        ||       t	        t
        t        |dd       t	        t
        t        |d	d       y )
Nr&   r(   r   r   r"   )	r   r   r   r   r   r   r'   r   r   )	r+   r*   r)   r*   r+   r,   r'   r,   r+   r   r'   )r   r2   r   r   r3   r4   )r   r   evenr6   s       r   test_even_extzTestArrayTools.test_even_ext=   s    HHo%' ( 11%8888: ;4*11%88_,,,. / 	4*j(Aqq9j(Aqq9r    c                    t        j                  g dg dg      }t        |dd      }t        j                  g dg dg      }t        ||       t        |dd      }t        j                  g dg dg dg dg      }t        ||       y )	Nr&   r(   r   r   r"   )	r   r   r   r   r   r   r'   r'   r'   )	r)   r)   r)   r*   r+   r,   r'   r'   r'   r   )r   r2   r	   r   )r   r   constr6   s       r   test_const_extzTestArrayTools.test_const_extP   s    HHo%' ( !QQ'8888: ;5(+!QQ'88_,,,. / 	5(+r    c                    t        j                  g dg dg      }t        |dd      }t        j                  g dg dg      }t        ||       t        |dd      }t        j                  g d	g dg dg d	g      }t        ||       y )
Nr&   r(   r   r   r"   )	r   r   r   r   r   r   r'   r   r   )	r   r   r)   r*   r+   r,   r'   r   r   r   )r   r   r   r   r   )r   r2   r
   r   )r   r   zeror6   s       r   test_zero_extzTestArrayTools.test_zero_ext`   s    HHo%' ( 11%8888: ;4*11%88_,,,. / 	4*r    N)	__name__
__module____qualname__r   r$   r7   r:   r=   r@    r    r   r   r   
   s     )**9&:&, +r    r   )numpyr   numpy.testingr   pytestr   r3   scipy.signal._arraytoolsr   r   r   r   r	   r
   r   rD   r    r   <module>rI      s$     , *- -d+ d+r    