
    hk                     |    S SK Jr  S SK7  S SK7  S SK7   " S S\5      r\S:X  a  S SKr\R                  " 5         gg)    )
CythonTest)*c                   >    \ rS rSrS rS rS rS rS rS r	S r
S	rg
)TestTreeFragments   c                 j    U R                  S5      nUR                  5       nU R                  SU5        g )Nx = 4)fragmentcopy
assertCode)selfFTs      `/var/www/fran/franai/venv/lib/python3.13/site-packages/Cython/Compiler/Tests/TestTreeFragment.py
test_basicTestTreeFragments.test_basic   s)    MM'"FFH#    c                    U R                  S5      nUR                  nUR                  5       nU R                  SUR                  S   R
                  S   R                  R                  R                  5        SUR                  S   R
                  S   R                  R                  l        U R                  SUR                  S   R
                  S   R                  R                  R                  5        g )Nzif True: x = 4xr   other)	r
   rootr   assertEqualstats
if_clausesbodylhsname)r   r   T1T2s       r   test_copy_is_taken$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                    U R                  S5      R                  S[        S SS905      nU R                  SUR                  S   R
                  R                  R                  5        U R                  SUR                  S   R
                  R                  R                  5        U R                  UR                  S   R
                  R                  UR                  S   R
                  R                  L5        g )Nzy + yyr   posr   r   )
r
   
substituteNameNoder   r   exproperand1r   operand2
assertTrue)r   r   s     r   test_substitutions_are_copied/TestTreeFragments.test_substitutions_are_copied   s    MM'"--sHC4P.QRaggajoo66;;<aggajoo66;;<
00
8P8PPQr   c                     U R                  S5      n[        S SS9nUR                  SU05      nU R                  SU5        g )Nr	   r#   r$   r   zy = 4)r
   r'   r&   r   )r   r   r#   r   s       r   test_substitution#TestTreeFragments.test_substitution   s<    MM'"C(LL###r   c                     U R                  S5      n[        S S9nUR                  SU05      nU R                  [	        UR
                  S   [        5      U5        g )NPASS)r%   r   )r
   PassStatNoder&   r+   
isinstancer   )r   r   	pass_statr   s       r   test_exprstatTestTreeFragments.test_exprstat!   sJ    MM&! T*	LL&9-.
1771:|<a@r   c                 p   U R                  S5      nUR                  S[        S SS905      nUR                  R                  S   R
                  R                  R                  nUR                  S   R
                  R                  R                  nU R                  UR                  UR                  5        g )Nz.
        x = y
        x = u * v ** w
        var$      )
r
   r&   r'   r   r   rhsr*   r)   r   r%   )r   r   r   r9   r:   s        r   test_pos_is_transferred)TestTreeFragments.test_pos_is_transferred'   s    MM   LL#T <=>FFLLO((11GGAJNN##,,&r   c                    S[         l        U R                  S5      nUR                  S/S9nUR                  R
                  nU R                  [        US   R                  [        5      5        U R                  [        US   R                  [        5      5        U R                  US   R                  R                  US   R                  R                  L 5        g )Nr   z-
            TMP
            x = TMP
        TMP)tempsr;   )TemplateTransformtemp_name_counterr
   r&   r   r   r+   r4   r(   TempRefNoder<   handle)r   r   r   ss       r   
test_tempsTestTreeFragments.test_temps1   s    ./+MM   LLwL'FFLL
1Q499k:;
1Q488[9:!		((AaDHHOO;<r    N)__name__
__module____qualname____firstlineno__r   r    r,   r/   r6   r=   rG   __static_attributes__rI   r   r   r   r      s(    $
GR$A'
=r   r   __main__N)	Cython.TestUtilsr   Cython.Compiler.TreeFragmentCython.Compiler.NodesCython.Compiler.UtilNodesr   rJ   unittestmainrI   r   r   <module>rV      s9    ' * # '5=
 5=n zMMO r   