
    H/Ph                     p    d Z ddlZddlmc mZ ddlmZm	Z	m
Z
mZ  G d d          Z G d d          ZdS )zTests for polyutils module.

    N)assert_almost_equalassert_raisesassert_equalassert_c                   8    e Zd Zd Zd Zd Zd Zd Zd Zd Z	dS )	TestMiscc                     dg}t          d          D ].}t          j        dgdg|z  z             }t          ||           /d S )N      r   )rangeputrimseqr   )selftgtnum_trailing_zerosress       e/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/numpy/polynomial/tests/test_polyutils.pytest_trimseqzTestMisc.test_trimseq   sZ    c"'(( 	# 	#*aSA3);#;;<<Cc""""	# 	#    c                     g t          j        g t           j                  fD ]$}t          t	          j        |          |           %d S )N)dtype)nparrayint32r   r   r   )r   	empty_seqs     r   test_trimseq_empty_inputz!TestMisc.test_trimseq_empty_input   sN    bhr:::; 	; 	;II..	::::	; 	;r   c                 t   t          t          t          j        g g           t          t          t          j        ddggg           t          t          t          j        dgdgg           g d}t	          t          |                    D ]}t	          |          D ]}t          j        d||                   }t          j        d||                   }t          j        ||g          \  }}t          |j	        j
        |j	        j
        k               t          |j	        j
        ||         k               d S )Nr
      a)idO)r   
ValueErrorr   	as_seriesr   lenr   onesr   r   char)r   typesr    jcicjresiresjs           r   test_as_serieszTestMisc.test_as_series   s   j",555j",1a&
;;;j",!se===s5zz"" 	5 	5A1XX 5 5WQa))WQa))!|RH55t
4:?:;;;
58344445	5 	5r   c                 B   g d}t          t          t          j        |d           t	          t          j        |          |d d                    t	          t          j        |d          |d d                    t	          t          j        |d          dg           d S )N)r   r
   r   r0   r
   r   r   )r   r#   r   trimcoefr   )r   coefs     r   test_trimcoefzTestMisc.test_trimcoef&   s    }}j"+tR888R[&&SbS	222R[q))49555R[q))A3/////r   c                     t          t          t          j        dddg           t          t          t          j        dddg           t          t          t          j        ddg            d S )N r
   r      Z   gV@)r   r#   r   
_vander_ndr   s    r   test_vander_nd_exceptionz!TestMisc.test_vander_nd_exception/   sT    j"-YEEEj"-R%AAAj"-R<<<<<r   c                 `    t          t          t          j        t          j        ddg           d S )Nr7   r   )r   ZeroDivisionErrorr   _divr;   s    r   test_div_zerodivzTestMisc.test_div_zerodiv7   s%    '"'9qcJJJJJr   c                 P    t          t          t          j        dg ddd           d S )Nr6   r7   r      )r   r#   r   _powr;   s    r   test_pow_too_largezTestMisc.test_pow_too_large;   s&    j"'2yyy!Q?????r   N)
__name__
__module____qualname__r   r   r.   r4   r<   r@   rD   r6   r   r   r   r      s        # # #; ; ;5 5 50 0 0= = =K K K@ @ @ @ @r   r   c                        e Zd Zd Zd Zd ZdS )
TestDomainc                     g d}ddg}t          j        |          }t          ||           g d}ddg}t          j        |          }t          ||           d S )N)r
   
   r8   r0   r0   rK   )y      ?      ?      ?      r   r   y                    @      ?)r   	getdomainr   )r   xr   r   s       r   test_getdomainzTestDomain.test_getdomainA   sj    NN2hl1ooC%%% #""Fml1ooC%%%%%r   c                 v   ddg}ddg}|}t          j        |||          }t          ||           ddg}ddg}|}|}t          j        |||          }t          ||           ddg}ddg}t          j        ||g          }t          j        ||g          }t          j        |||          }t          ||            G d	 d
t          j                  }ddg}ddg}t          j        ||g                              |          }t          j        |||          }t          t          ||                     d S )Nr   rB   r
   r8                 rM   r   c                       e Zd ZdS ),TestDomain.test_mapdomain.<locals>.MyNDArrayN)rE   rF   rG   r6   r   r   	MyNDArrayrU   g   s        Dr   rV   )	r   	mapdomainr   r   r   ndarrayviewr   
isinstance)r   dom1dom2r   r   rO   rV   s          r   test_mapdomainzTestDomain.test_mapdomainN   sm   1v1vl4t,,C%%% Awl1dD))C%%% 1v1vhd|$$HdD\""l1dD))C%%%	 	 	 	 	
 	 	 	 1v1vHdD\""''	22l1dD))
3	**+++++r   c                     ddg}ddg}ddg}t          j        ||          }t          ||           ddg}dd	g}d
dg}t          j        ||          }t          ||           d S )Nr   rB   r
   r8   g      ?rR   rM   rS   r   y            ?rL   )r   mapparmsr   )r   r[   r\   r   r   s        r   test_mapparmszTestDomain.test_mapparmsp   s    1v1v"gl4&&C%%% Awk$%%C%%%%%r   N)rE   rF   rG   rP   r]   r`   r6   r   r   rI   rI   ?   sB        & & & ,  ,  ,D& & & & &r   rI   )__doc__numpyr   numpy.polynomial.polyutils
polynomial	polyutilsr   numpy.testingr   r   r   r   r   rI   r6   r   r   <module>rg      s         ' ' ' ' ' ' ' ' '           
2@ 2@ 2@ 2@ 2@ 2@ 2@ 2@h>& >& >& >& >& >& >& >& >& >&r   