
    Ae                     ~    d dl Z d dlmZ dZ e eej                                     Z G d de j                        Z
y)    N)StringIOTreez
cdef int spam                   # line 1

cdef ham():
    a = 1
    b = 2
    c = 3
    d = 4

def eggs():
    pass

cpdef bacon():
    print spam
    print 'scotch'
    print 'tea?'
    print 'or coffee?'          # line 16
c                   .    e Zd Zd Zd Zd ZddZddZy)TestStringIOTreec                 6    t        j                         | _        y N)
stringtreer   treeselfs    =lib/python3.12/site-packages/Cython/Tests/TestStringIOTree.pysetUpzTestStringIOTree.setUp   s    ++-	    c                 <    | j                   j                         rJ y r   )r	   
allmarkersr
   s    r   test_markerszTestStringIOTree.test_markers   s    99'')))r   c           	      J   | j                  d       | j                  j                         }| j                  d       | j                  j                         }| j                  d       |j                         }| j                  d|       |j                         }| j                  d|       | j                  d|       | j                  d|       |j                         }| j                  d	|       | j                  d
|       | j                  d|       | j	                  | j                  j                         t        t        dd                   | j	                  t        j                         | j                  j                         j                                y )N)         )      )         )      r	         	      
      r      )write_linesr	   insertion_point
write_lineassertEqualr   listrangecodestripgetvalue)r   line_4_to_6_insertion_pointline_9_to_13_insertion_pointline_4_insertion_pointline_9_to_12_insertion_pointline_10_insertion_points         r   test_insertionzTestStringIOTree.test_insertion"   sQ   #&*ii&?&?&A# '+yy'@'@'B$&!<!L!L!N&AB )88: 	%!=> 67 <=">"N"N"P!=>!89!=>--/eArl1CDtyy'9'9';'A'A'CDr   Nc                 8    |D ]  }| j                  ||        y )Nr   )r'   )r   linenosr	   linenos       r   r%   zTestStringIOTree.write_lines;   s!     	/FOOFO.	/r   c                     || j                   }|j                  j                  |       |j                  t        |   dz          y )N
)r	   markersappendwritelinemap)r   r6   r	   s      r   r'   zTestStringIOTree.write_line?   s7    <99DF#

76?T)*r   r   )__name__
__module____qualname__r   r   r3   r%   r'    r   r   r   r      s    .*E2/+r   r   )unittestCythonr   r   r+   dict	enumerate
splitlinesr<   TestCaser   r@   r   r   <module>rG      s<     -& y*+
,)+x(( )+r   