B
    u9aø  ã               @   sZ   d Z ddlZddlZddlZddlmZmZmZmZ G dd„ dej	ƒZ
edkrVe ¡  dS )zUnit tests for numbers.py.é    N)ÚComplexÚRealÚRationalÚIntegralc               @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )ÚTestNumbersc             C   s”   |   tttƒ¡ |   tttƒ¡ |  dtdƒj¡ |  dtdƒj¡ |  dtdƒ ¡ ¡ |  dtdƒ ¡ ¡ |  dtdƒj	¡ |  dtdƒj
¡ d S )Né   r   iùÿÿÿé   )Ú
assertTrueÚ
issubclassÚintr   r   ÚassertEqualÚrealÚimagÚ	conjugateÚ	numeratorÚdenominator)Úself© r   ú+/usr/lib/python3.7/test_abstract_numbers.pyÚtest_int	   s    zTestNumbers.test_intc             C   sp   |   tttƒ¡ |  tttƒ¡ |  dtdƒj¡ |  dtdƒj¡ |  dtdƒ 	¡ ¡ |  dtdƒ 	¡ ¡ d S )Ng333333@r   g333333À)
ÚassertFalser
   Úfloatr   r	   r   r   r   r   r   )r   r   r   r   Ú
test_float   s    zTestNumbers.test_floatc             C   sš   |   tttƒ¡ |  tttƒ¡ tddƒtddƒ }}|  ttj	|¡ |  tt
j||¡ |  tt||¡ |  tt
j||¡ |  tt|¡ |  tt|¡ d S )Né   é   é   r   )r   r
   Úcomplexr   r	   r   ZassertRaisesÚ	TypeErrorÚmathZtruncÚoperatorÚmodÚdivmodÚfloordivr   r   )r   Zc1Zc2r   r   r   Útest_complex   s    zTestNumbers.test_complexN)Ú__name__Ú
__module__Ú__qualname__r   r   r#   r   r   r   r   r      s   	r   Ú__main__)Ú__doc__r   r   ZunittestZnumbersr   r   r   r   ZTestCaser   r$   Úmainr   r   r   r   Ú<module>   s   #