
     YHhk                     z    d dl mZ d dl d dl d dl  G d de      Zedk(  rd dlZ ej                          yy)    )
CythonTest)*c                   6    e Zd Zd Zd Zd Zd Zd Zd Zd Z	y)	TestTreeFragmentsc                 j    | j                  d      }|j                         }| j                  d|       y )Nx = 4)fragmentcopy
assertCode)selfFTs      _/var/www/html/planif/env/lib/python3.12/site-packages/Cython/Compiler/Tests/TestTreeFragment.py
test_basiczTestTreeFragments.test_basic   s)    MM'"FFH#    c                    | j                  d      }|j                  }|j                         }| j                  d|j                  d   j
                  d   j                  j                  j                         d|j                  d   j
                  d   j                  j                  _        | j                  d|j                  d   j
                  d   j                  j                  j                         y )Nzif True: x = 4xr   other)	r	   rootr
   assertEqualstats
if_clausesbodylhsname)r   r   T1T2s       r   test_copy_is_takenz$TestTreeFragments.test_copy_is_taken   s    MM*+VVVVXbhhqk44Q7<<@@EEF29q!&&**/bhhqk44Q7<<@@EEFr   c                    | j                  d      j                  dt        d d      i      }| j                  d|j                  d   j
                  j                  j                         | j                  d|j                  d   j
                  j                  j                         | j                  |j                  d   j
                  j                  |j                  d   j
                  j                  u       y )Nzy + yyr   posr   r   )
r	   
substituteNameNoder   r   exproperand1r   operand2
assertTrue)r   r   s     r   test_substitutions_are_copiedz/TestTreeFragments.test_substitutions_are_copied   s    MM'"--sHC4P.QRaggajoo66;;<aggajoo66;;<
00
8P8PPQr   c                     | j                  d      }t        d d      }|j                  d|i      }| j                  d|       y )Nr   r    r!   r   zy = 4)r	   r$   r#   r   )r   r   r    r   s       r   test_substitutionz#TestTreeFragments.test_substitution   s<    MM'"C(LL###r   c                     | j                  d      }t        d       }|j                  d|i      }| j                  t	        |j
                  d   t              |       y )NPASS)r"   r   )r	   PassStatNoder#   r(   
isinstancer   )r   r   	pass_statr   s       r   test_exprstatzTestTreeFragments.test_exprstat!   sJ    MM&! T*	LL&9-.
1771:|<a@r   c                 v   | j                  d      }|j                  dt        d d      i      }|j                  j                  d   j
                  j                  j                  }|j                  d   j
                  j                  j                  }| j                  |j                  |j                         y )Nz.
        x = y
        x = u * v ** w
        var!      )
r	   r#   r$   r   r   rhsr'   r&   r   r"   )r   r   r   r3   r4   s        r   test_pos_is_transferredz)TestTreeFragments.test_pos_is_transferred'   s    MM   LL#T <=>FFLLO((11GGAJNN##,,&r   c                    dt         _        | j                  d      }|j                  dg      }|j                  j
                  }| j                  t        |d   j                  t                     | j                  t        |d   j                  t                     | j                  |d   j                  j                  |d   j                  j                  u        y )Nr   z-
            TMP
            x = TMP
        TMP)tempsr5   )TemplateTransformtemp_name_counterr	   r#   r   r   r(   r/   r%   TempRefNoder6   handle)r   r   r   ss       r   
test_tempszTestTreeFragments.test_temps1   s    ./+MM   LLwL'FFLL
1Q499k:;
1Q488[9:!		((AaDHHOO;<r   N)
__name__
__module____qualname__r   r   r)   r+   r1   r7   r@    r   r   r   r      s(    $
GR$A'
=r   r   __main__N)	Cython.TestUtilsr   Cython.Compiler.TreeFragmentCython.Compiler.NodesCython.Compiler.UtilNodesr   rA   unittestmainrD   r   r   <module>rL      s;    ' * # '5=
 5=n zHMMO r   