U
    ?h                     @   sV   d Z ddlZddlm  mZ ddlmZm	Z	m
Z
mZ G dd dZG dd dZdS )zTests for polyutils module.

    N)assert_almost_equalassert_raisesassert_equalassert_c                   @   s<   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd ZdS )TestMiscc                 C   s8   t dD ]*}dg}tdgdgd  }t|| qd S )N      r   )rangepuZtrimseqr   )selfitgtres r   W/var/www/html/venv/lib/python3.8/site-packages/numpy/polynomial/tests/test_polyutils.pytest_trimseq   s    zTestMisc.test_trimseqc                 C   s   t ttjg g t ttjddggg t ttjdgdgg dddg}tt|D ]l}t|D ]^}td|| }td|| }t||g\}}t|j	j
|j	j
k t|j	j
|| k q^qRd S )Nr      ar   dO)r   
ValueErrorr
   Z	as_seriesr	   lennpZonesr   Zdtypechar)r   typesr   jcicjZresiZresjr   r   r   test_as_series   s    
zTestMisc.test_as_seriesc                 C   sf   ddddg}t ttj|d tt||d d  tt|d|d d  tt|ddg d S )Nr   r   r   )r   r   r
   Ztrimcoefr   )r   Zcoefr   r   r   test_trimcoef"   s
    zTestMisc.test_trimcoefc                 C   s>   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 )Nr   r   r      Z   gV@)r   r   r
   Z
_vander_ndr   r   r   r   test_vander_nd_exception+   s    z!TestMisc.test_vander_nd_exceptionc                 C   s   t ttjtjddg d S )Nr"   r   )r   ZeroDivisionErrorr
   _divr%   r   r   r   test_div_zerodiv3   s    zTestMisc.test_div_zerodivc                 C   s   t ttjddddgdd d S )Nr   r   r   r#   r      )r   r   r
   Z_powr%   r   r   r   test_pow_too_large7   s    zTestMisc.test_pow_too_largeN)	__name__
__module____qualname__r   r   r!   r&   r)   r+   r   r   r   r   r      s   	r   c                   @   s$   e Zd Zdd Zdd Zdd ZdS )
TestDomainc                 C   sT   ddddg}ddg}t |}t|| ddddg}d	d
g}t |}t|| d S )Nr   
   r#   r   y      ?      ?      ?      r   r   y                    @      ?)r
   	getdomainr   )r   xr   r   r   r   r   test_getdomain=   s    


zTestDomain.test_getdomainc                 C   s   ddg}ddg}|}t |||}t|| ddg}ddg}|}|}t |||}t|| ddg}ddg}t||g}t||g}t |||}t|| G d	d
 d
tj}ddg}ddg}t||g|}t |||}tt|| d S )Nr   r*   r   r#                 r2   r   c                   @   s   e Zd ZdS )z,TestDomain.test_mapdomain.<locals>.MyNDArrayN)r,   r-   r.   r   r   r   r   	MyNDArrayc   s   r8   )	r
   Z	mapdomainr   r   arrayZndarrayviewr   
isinstance)r   dom1dom2r   r   r4   r8   r   r   r   test_mapdomainJ   s.    


zTestDomain.test_mapdomainc                 C   s`   ddg}ddg}ddg}t ||}t|| ddg}dd	g}d
dg}t ||}t|| d S )Nr   r*   r   r#   g      ?r6   r2   r7   r   y            ?r1   )r
   Zmapparmsr   )r   r<   r=   r   r   r   r   r   test_mapparmsl   s    
zTestDomain.test_mapparmsN)r,   r-   r.   r5   r>   r?   r   r   r   r   r/   ;   s   "r/   )__doc__numpyr   Znumpy.polynomial.polyutilsZ
polynomialZ	polyutilsr
   Znumpy.testingr   r   r   r   r   r/   r   r   r   r   <module>   s
   0