a
    kh                     @   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sNJ || |ks^J d|  |ksnJ ||  |ks~J || d
ksJ d| tjd ksJ || td	d ksJ || tju sJ td} t| tj t| tj ||  d|  ksJ ||  d|  ksJ t	d }t
|ts6J |jdt	fksJJ t	t }t
|tsbJ |jtt	fksvJ t	d }t
|tsJ |jtddt	fksJ |jtjd t	fksJ t	t }t
|tsJ |jdt t	fksJ 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   expr1Zexpr2Zexpr3Zexpr4 r"   U/var/www/auris/lib/python3.9/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sJ dd |D t	t
dksJ 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       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prefZq1Z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   +