
    Ug0                     `    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dS )    N)assert_array_equal)raises)
axis_sliceaxis_reverseodd_exteven_ext	const_extzero_extc                   2    e Zd Zd Zd Zd Zd Zd Zd ZdS )TestArrayToolsc                    t          j        d                              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                    d S )N         r      )startstopaxis)r   r      )r   stepr   )nparangereshaper   r   )selfass      b/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/scipy/signal/tests/test_array_tools.pytest_axis_slicezTestArrayTools.test_axis_slice   si   IbMM!!!Q''q2221a!QQQi(((q+++1aQQQi(((q2221a1Q3i(((q+++1a233i(((q2221a!QQQi(((q2221a33Q3i(((((    c                    t          j        d                              dd          }t          |d          }t	          ||d d dd d f                    t          |d          }t	          ||d d d d df                    d S )Nr   r   r   r   r   r   r   )r   r   r   r   r   )r   r   rs      r   test_axis_reversez TestArrayTools.test_axis_reverse!   s    IbMM!!!Q''###1a"aaaj)))###1a44R4j)))))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          ||           t	          t
          t          |dd           t	          t
          t          |dd           d S )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   Hooo%oo' ( ( a###8999:::< = =3)))a###8///,__,__///1 2 2 	3)))j'1aa8888j'1aa888888r    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          ||           t	          t
          t          |dd           t	          t
          t          |d	d           d S )
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   Hooo%oo' ( ( 11%%%8888888: ; ;4***11%%%8___,__,__,__. / / 	4***j(Aqq9999j(Aqq999999r    c                 6   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          ||           d S )	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    Hooo%oo' ( ( !QQ'''8888888: ; ;5(+++!QQ'''8___,__,__,__. / / 	5(+++++r    c                 6   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          ||           d S )
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    Hooo%oo' ( ( 11%%%8888888: ; ;4***11%%%8___,__,__,__. / / 	4*****r    N)	__name__
__module____qualname__r   r$   r7   r:   r=   r@    r    r   r   r   
   sn        ) ) )** * *9 9 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+ d+ d+ d+ d+ d+ d+ d+ d+r    