a
    äze  ć                   @   s2   d Z ddlZG dd dejZedkr.e ”  dS )zFTest compiler changes for unary ops (+, -, ~) introduced in Python 2.2é    Nc                   @   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 )ŚUnaryOpTestCasec                 C   sT   |   ddk” |  dd” |  dd” |   ddk” |   ddk” |   ddk” d S )Néž’’’r   é   g       Ąy              Ąy               Ą©Ś
assertTrueŚassertEqual©Śself© r
   ś%/usr/lib/python3.9/test/test_unary.pyŚtest_negative   s    zUnaryOpTestCase.test_negativec                 C   sL   |   dd” |   dd” |   dd” |   dd” |   dd” |   dd” d S )Nr   r   g       @y               @©r   r   r
   r
   r   Śtest_positive   s    zUnaryOpTestCase.test_positivec                 C   s8   |   ddk” |  dd” |  dd” |   ddk” d S )Nr   r   r   r   r   r
   r
   r   Śtest_invert   s    zUnaryOpTestCase.test_invertc                 C   sJ   d}|   td| dk” |   td| dk” |   td| dk” d S )NZ 99999999999999999999999999999999ś+l   ’’>g-øØ-; ś-lų’’’’’>g-øØ-; ś~lų’’’    >g-øØ-; )r   Śeval)r	   Zninesr
   r
   r   Śtest_no_overflow   s    z UnaryOpTestCase.test_no_overflowc                 C   s4   |   dd” |   dd” |   dd” |   dd” d S )Nių’’’iš’’’é   r   r   r
   r
   r   Śtest_negation_of_exponentiation#   s    z/UnaryOpTestCase.test_negation_of_exponentiationc                 C   sN   dD ](}|   tt|d ” |   tt|d ” q|   ttd” |   ttd” d S )N)r   r   r   zb'a'z'a'z~2jz~2.0)ZassertRaisesŚ	TypeErrorr   )r	   Śopr
   r
   r   Śtest_bad_types+   s
    zUnaryOpTestCase.test_bad_typesN)	Ś__name__Ś
__module__Ś__qualname__r   r   r   r   r   r   r
   r
   r
   r   r      s   r   Ś__main__)Ś__doc__ZunittestZTestCaser   r   Śmainr
   r
   r
   r   Ś<module>   s   /