o
    ú»Îh¾  ã                   @   s    d dl mZ d dlmZ d dlmZ d dlmZmZ d dl	m
Z
mZmZmZ d dlmZmZmZmZmZ d dlmZ edƒZd	d
„ Zdd„ Zdd„ Zdd„ ZdS )é    )ÚMul)ÚRational)ÚS)ÚSymbolÚsymbols)ÚQuantityÚlengthÚmeterÚW)ÚPREFIXESÚPrefixÚprefix_unitÚkiloÚkibi)ÚSIÚxc                  C   sà  t d } t d }t d }tddddd}| | tju sJ ‚| t td	 ks'J ‚|| |ks/J ‚d|  |ks7J ‚||  |ks?J ‚|| d
ksGJ ‚d| tjd ksRJ ‚|| td	ƒd ks^J ‚|| tju sgJ ‚tdƒ} t | tj¡ t | tj¡ ||  d|  ksƒJ ‚||  d|  ksJ ‚t	d }t
|tƒs˜J ‚|jdt	fks¡J ‚t	t }t
|tƒs¬J ‚|jtt	fksµJ ‚t	d }t
|tƒsÀJ ‚|jtddƒt	fksÌJ ‚|jtjd t	fksØJ ‚t	t }t
|tƒsãJ ‚|jdt t	fksîJ ‚d S )NÚmÚkÚMÚdodecaÚddé   é   )Úbaseiè  é   Ú
fake_meteré   )r   r   r   ZOner
   r   r   Úset_quantity_dimensionÚset_quantity_scale_factorr   Ú
isinstancer   Úargsr   r   )r   r   r   r   Zexpr1Zexpr2Zexpr3Zexpr4© r!   úm/home/www/facesmatcher.com/frenv_anti/lib/python3.10/site-packages/sympy/physics/units/tests/test_prefixes.pyÚtest_prefix_operations   s>   r#   c                  C   sÚ   t ddd} |  dt¡ td td td dœ}t dd	d}t d
dd}t ddd}t |t¡ t |td ¡ t |td ¡ t |td ¡ |||g}t| |ƒ}t	|ƒt	|ƒks\J ‚dd„ |D ƒt	t
dƒƒkskJ ‚d S )Nr   r   ©Zabbrevr   ÚcÚd)r   r%   r&   Zmillifake_meterÚmmZcentifake_meterÚcmZdecifake_meterÚdmc                 S   s   h | ]}|j ’qS r!   r$   )Ú.0Úvr!   r!   r"   Ú	<setcomp>L   s    z#test_prefix_unit.<locals>.<setcomp>zmm,cm,dm)r   Z set_global_relative_scale_factorr	   r   r   r   r   r   r   Úsetr   )r   ZprefÚq1Úq2Zq3ÚresZprefsr!   r!   r"   Útest_prefix_unit8   s   

"r1   c                   C   s    t jdksJ ‚tjdksJ ‚d S )Né
   é   )r   r   r   r!   r!   r!   r"   Ú
test_basesO   s   r4   c                   C   s,   t ttƒƒtks
J ‚t ttƒƒtksJ ‚d S )N)ÚevalÚreprr   r   r!   r!   r!   r"   Ú	test_reprT   s   r7   N)Zsympy.core.mulr   Zsympy.core.numbersr   Zsympy.core.singletonr   Zsympy.core.symbolr   r   Zsympy.physics.unitsr   r   r	   r
   Zsympy.physics.units.prefixesr   r   r   r   r   Zsympy.physics.units.systemsr   r   r#   r1   r4   r7   r!   r!   r!   r"   Ú<module>   s    +