U
    ˜9%e(  ã                   @   sÜ   d dl mZ d dlmZ d dlmZmZ d dlmZ d dl	m
Z
 dd„ Zdd	„ Zd
d„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zd d!„ Zd"d#„ Zd$d%„ Zd&d'„ Zd(d)„ Zd*d+„ Zd,S )-é    )Úraises)ÚS)ÚZZÚQQ)ÚDomainScalar)ÚDomainMatrixc                   C   s    t tdd„ ƒ t tdd„ ƒ d S )Nc                   S   s   t tdƒtƒS ©Né   )r   r   r   © r
   r
   úk/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/sympy/polys/matrices/tests/test_domainscalar.pyÚ<lambda>
   ó    z+test_DomainScalar___new__.<locals>.<lambda>c                   S   s   t tdƒdƒS r   )r   r   r
   r
   r
   r   r      r   )r   Ú	TypeErrorr
   r
   r
   r   Útest_DomainScalar___new__	   s    r   c                  C   s8   t tdƒtƒ} |  tdƒt¡}|t tdƒtƒks4t‚d S )Nr	   é   )r   r   ÚnewÚAssertionError©ÚAÚBr
   r
   r   Útest_DomainScalar_new   s    r   c                  C   s"   t tdƒtƒ} t| ƒdkst‚d S )Nr	   >   Ú1úmpz(1))r   r   Úreprr   ©r   r
   r
   r   Útest_DomainScalar_repr   s    r   c                  C   s,   t dƒ} t | ¡}|ttdƒtƒks(t‚d S r   )r   r   Z
from_sympyr   r   )Úexprr   r
   r
   r   Útest_DomainScalar_from_sympy   s    
r   c                  C   s,   t tdƒtƒ} |  ¡ }|jr$|dks(t‚d S r   )r   r   Zto_sympyZ
is_Integerr   )r   r   r
   r
   r   Útest_DomainScalar_to_sympy   s    r   c                  C   s2   t tdƒtƒ} |  t¡}|t tdƒtƒks.t‚d S r   )r   r   Z	to_domainr   r   r   r
   r
   r   Útest_DomainScalar_to_domain%   s    
r   c                  C   s2   t tdƒtƒ} |  t¡}|t tdƒtƒks.t‚d S r   )r   r   Z
convert_tor   r   r   r
   r
   r   Útest_DomainScalar_convert_to+   s    
r    c                  C   sL   t tdƒtƒ} t tdƒtƒ}|  |¡\} }| j|j  krBtksHn t‚d S )Nr	   é   )r   r   r   ZunifyÚdomainr   r   r
   r
   r   Útest_DomainScalar_unify1   s    r#   c                     sL   t tdƒtƒ‰ t tdƒtƒ} ˆ |  t tdƒtƒks6t‚tt‡ fdd„ƒ d S )Nr	   r!   é   c                      s   ˆ d S ©Ng      ø?r
   r
   r   r
   r   r   =   r   z'test_DomainScalar_add.<locals>.<lambda>©r   r   r   r   r   r   ©r   r
   r   r   Útest_DomainScalar_add8   s    r(   c                     sL   t tdƒtƒ‰ t tdƒtƒ} ˆ |  t tdƒtƒks6t‚tt‡ fdd„ƒ d S )Nr	   r!   éÿÿÿÿc                      s   ˆ d S r%   r
   r
   r   r
   r   r   D   r   z'test_DomainScalar_sub.<locals>.<lambda>r&   r'   r
   r   r   Útest_DomainScalar_sub?   s    r*   c                     sž   t tdƒtƒ‰ t tdƒtƒ} ttdƒtdƒgtdƒtdƒggdtƒ}ˆ |  t tdƒtƒks^t‚ˆ | |ksnt‚| d t tdƒtƒksˆt‚tt‡ fdd„ƒ d S )Nr	   r!   r$   r   )r!   r!   c                      s   ˆ d S r%   r
   r
   r   r
   r   r   N   r   z'test_DomainScalar_mul.<locals>.<lambda>)r   r   r   r   r   r   r   )r   Údmr
   r   r   Útest_DomainScalar_mulF   s    (r,   c                     sv   t tdƒtƒ‰ t tdƒtƒ} ˆ |  t tddƒtƒks8t‚t tdƒtƒ}ˆ | t tdƒtƒks`t‚tt‡ fdd„ƒ d S )Néûÿÿÿr!   éýÿÿÿc                      s   ˆ d S r%   r
   r
   r   r
   r   r   X   r   z,test_DomainScalar_floordiv.<locals>.<lambda>r&   ©r   ÚCr
   r   r   Útest_DomainScalar_floordivQ   s    r1   c                     st   t tdƒtƒ‰ t tdƒtƒ} ˆ |  t tdƒtƒks6t‚t tdƒtƒ}ˆ | t tdƒtƒks^t‚tt‡ fdd„ƒ d S )Né   r!   r   r	   c                      s   ˆ d S r%   r
   r
   r   r
   r   r   b   r   z'test_DomainScalar_mod.<locals>.<lambda>r&   r/   r
   r   r   Útest_DomainScalar_mod[   s    r3   c                     s–   t tdƒtƒ‰ t tdƒtƒ} tˆ | ƒt tddƒtƒt tdƒtƒfksHt‚t tdƒtƒ}tˆ |ƒt tdƒtƒt tdƒtƒfks€t‚tt‡ fdd„ƒ d S )Nr2   r!   r   r	   c                      s
   t ˆ dƒS r%   )Údivmodr
   r   r
   r   r   l   r   z*test_DomainScalar_divmod.<locals>.<lambda>)r   r   r   r4   r   r   r   r/   r
   r   r   Útest_DomainScalar_divmode   s    ,*r5   c                     sB   t tdƒtƒ‰ ˆ d } | t tdƒtƒks,t‚tt‡ fdd„ƒ d S )Nr-   r!   é   c                      s   ˆ d S r%   r
   r
   r   r
   r   r   t   r   z'test_DomainScalar_pow.<locals>.<lambda>)r   r   r   r   r   r'   r
   r   r   Útest_DomainScalar_powo   s    r7   c                  C   s.   t tdƒtƒ} t tdƒtƒ}| 
 |ks*t‚d S )Nr!   )r   r   r   r   r
   r
   r   Útest_DomainScalar_posw   s    r8   c                  C   sd   t tdƒtƒ} | | kst‚t tdƒtƒ}| |ks4t‚t tdƒtƒ}| |ksNt‚dg}| |ks`t‚d S )Nr!   r-   r	   )r   r   r   r   )r   r   r0   ÚDr
   r
   r   Útest_DomainScalar_eq}   s    r:   c                  C   s@   t tdƒtƒ} |  ¡ dkst‚t tdƒtƒ}| ¡ dks<t‚d S )Nr   Tr	   F)r   r   Úis_zeror   r   r
   r
   r   Útest_DomainScalar_isZeroˆ   s    r<   c                  C   s@   t tdƒtƒ} |  ¡ dkst‚t tdƒtƒ}| ¡ dks<t‚d S )Nr	   Tr   F)r   r   Zis_oner   r   r
   r
   r   Útest_DomainScalar_isOne   s    r=   N)Zsympy.testing.pytestr   Zsympy.core.symbolr   Zsympy.polysr   r   Z!sympy.polys.matrices.domainscalarr   Z!sympy.polys.matrices.domainmatrixr   r   r   r   r   r   r   r    r#   r(   r*   r,   r1   r3   r5   r7   r8   r:   r<   r=   r
   r
   r
   r   Ú<module>   s.   


