Sindbad~EG File Manager
�
'Μg9� � �6 � d dl mZ d dlmZ d dlmZmZmZmZmZm Z m
Z
mZmZm
Z
mZmZmZmZmZmZmZmZ d dlmZmZ d dlZd dlmZ d dlmZmZ d dlm Z m!Z! d dlmZ d d l"m#Z#m$Z$m%Z% d dl&Z&d dl'Z'd
� Z( G d� de� Z) G d
� de)� Z*d� Z+ G d� de� Z, G d� de� Z- G d� de� Z. G d� de� Z/ G d� de� Z0 G d� de� Z1 G d� de� Z2 G d� de� Z3 G d � d!e� Z4 G d"� d#ej: � Z5e6d$k( r ejn � yy)%� )�support)� os_helper)�tokenize�
untokenize�NUMBER�NAME�OP�STRING� ENDMARKER�ENCODING�tok_name�detect_encoding�open�Untokenizer�generate_tokens�NEWLINE�!_generate_tokens_from_c_tokenizer�DEDENT� TokenInfo�
TokenError)�BytesIO�StringION)�dedent)�TestCase�mock)�VALID_UNDERSCORE_LITERALS�INVALID_UNDERSCORE_LITERALS)�run_test_script�make_script�run_python_until_endc �� � g }t |j � � }|d dv}| D ]P \ }}}}} |t k( r |S |r|t k( r |d |k( r�)t | }|j d|d�d|d�d|� d|� �� �R |S )N���z
r � �10� �13)�len�
splitlinesr r r
�append)
�token_generator�
source_string�result� num_lines�missing_trailing_nl�type�token�start�end�lines
�//usr/local/lib/python3.12/test/test_tokenize.py�stringify_tokens_from_sourcer5 s� � �
�F��M�,�,�.�/�I�'��+�6�9��)8�%��e�U�C���9��� �M� �4�7�?�s�1�v��7J����~���
�
��T�"�I�Q�u�r�l�!�E�7�!�C�5�A�B� *9� �M� c � � e Zd Zd� Zd� Zd� Zd� Zd� Zd� Zd� Z d� Z
d � Zd
� Zd� Z
d� Zd
� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zy)�TokenizeTestc �� � t |j d� � }t t |j � |� }| j |dg|j
� j � z � y )N�utf-8z* ENCODING 'utf-8' (0, 0) (0, 0))r �encoder5 r �readline�assertEqual�rstripr( ��self�s�expected�fr, s r4 �check_tokenizezTokenizeTest.check_tokenize. sZ � �
�A�H�H�W�%�&��-�h�q�z�z�.B�A�F������F�G�!���*�5�5�7�8� 9r6 c �� � d� }| j t � 5 t t |� j � � d d d � d� }| j t � 5 t t |� j � � d d d � d� }| j t � 5 t t |� j � � d d d � y # 1 sw Y ��xY w# 1 sw Y �ZxY w# 1 sw Y y xY w)Nc 3 � K � d�� d�� y �w)N�sdfosdg� rH r6 r4 �genz/TokenizeTest.test_invalid_readline.<locals>.gen8 s � �� ��O��O�� �
c 3 � K � d�� d�� y �w)Ns sdfosdgrH rH r6 r4 rI z/TokenizeTest.test_invalid_readline.<locals>.gen>