
    daf                     h    d Z ddlZ G d dej                        Zedk(  r ej
                          yy)zFTest compiler changes for unary ops (+, -, ~) introduced in Python 2.2    Nc                   0    e Zd Zd Zd Zd Zd Zd Zd Zy)UnaryOpTestCasec                     | j                  ddk(         | j                  dd       | j                  dd       | j                  ddk(         | j                  ddk(         y )Nr      g       y              y               
assertTrueassertEqualselfs    */root/Python-3.12.4/Lib/test/test_unary.pytest_negativezUnaryOpTestCase.test_negative   sR    e$Qa (v&    c                     | j                  dd       | j                  dd       | j                  dd       | j                  dd       | j                  dd       y )Nr   r   g       @y               @r
   r   s    r   test_positivezUnaryOpTestCase.test_positive   sR    QQa s#b!r   c                 t    | j                  ddk(         | j                  dd       | j                  dd       y )Nr   r   r   s    r   test_invertzUnaryOpTestCase.test_invert   s2    f%R a r   c                     d}| j                  t        d|z         dk(         | j                  t        d|z         dk(         | j                  t        d|z         dk(         y )N 99999999999999999999999999999999+l   >g--; -l>g--; ~l    >g--; )r	   eval)r   niness     r   test_no_overflowz UnaryOpTestCase.test_no_overflow   sU    S5[)X56S5[)[89S5[)[89r   c                     | j                  dd       | j                  dd       | j                  dd       | j                  dd       y )Nii   r   r   s    r   test_negation_of_exponentiationz/UnaryOpTestCase.test_negation_of_exponentiation    sD     	"%B'#&B'r   c                     dD ]>  }| j                  t        t        |dz          | j                  t        t        |dz          @ | j                  t        t        d       | j                  t        t        d       y )N)r   r   r   zb'a'z'a'z~2jz~2.0)assertRaises	TypeErrorr   )r   ops     r   test_bad_typeszUnaryOpTestCase.test_bad_types(   sc     	;BirF{;irEz:	; 	)T51)T62r   N)	__name__
__module____qualname__r   r   r   r   r!   r&    r   r   r   r      s     '"!
:(3r   r   __main__)__doc__unittestTestCaser   r'   mainr*   r   r   <module>r0      s8    L )3h'' )3X zHMMO r   