Your IP : 216.73.217.32


Current Path : /opt/alt/python39/lib64/python3.9/test/__pycache__/
Upload File :
Current File : //opt/alt/python39/lib64/python3.9/test/__pycache__/test_linecache.cpython-39.opt-1.pyc

a

XC?h�%�@s2dZddlZddlZddlZddlZddlZddlmZej	Z
e
dZdZdZ
ej�e	�Zd��Zej�e
�ZdZd	Zd
ZGdd�d�ZGd
d�de�ZGdd�de�ZGdd�deej�ZGdd�deej�ZGdd�deej�ZGdd�deej�ZGdd�dej�ZGdd�dej�Z e!dk�r.e�"�dS)z  Tests for the linecache module �N)�supportz.missingz
!@$)(!@#_1�z
linecache abcz3
" Docstring "

def function():
    return result

z%
def f():
    return 1 + 1

a = f()

z
def f():
    return 3cseZdZ�fdd�Z�ZS)�TempFilecs^t���tjdd��$}|j|_|�|j�Wd�n1s@0Y|�t	j
|j�dS)NF)�delete)�super�setUp�tempfileZNamedTemporaryFile�name�	file_name�write�file_byte_string�
addCleanupr�unlink)�self�fp��	__class__��8/opt/alt/python39/lib64/python3.9/test/test_linecache.pyr*s

*zTempFile.setUp)�__name__�
__module__�__qualname__r�
__classcell__rrrrr(srcs,eZdZ�fdd�Zdd�Zdd�Z�ZS)�GetLineTestsGoodDatacs"d�|j��d�|_t���dS)Nr�utf-8)�join�	file_list�encoderrr�rrrrr5szGetLineTestsGoodData.setUpcCsrt�|j��R}t|�D]8\}}|�d�s0|d7}t�|j|d�}|�||�qWd�n1sd0YdS)N�
�)�tokenize�openr
�	enumerate�endswith�	linecache�getline�assertEqual)rr�index�lineZcached_linerrr�test_getline9s
z!GetLineTestsGoodData.test_getlinecCst�|j�}|�||j�dS�N)r%�getlinesr
r'r�r�linesrrr�
test_getlinesBsz"GetLineTestsGoodData.test_getlines)rrrrr*r/rrrrrr2s	rc@seZdZdd�Zdd�ZdS)�GetLineTestsBadDatacCs|�ttftj|jd�dS)Nr )�assertRaises�SyntaxError�UnicodeDecodeErrorr%r&r
rrrrr*Js

�z GetLineTestsBadData.test_getlinecCs|�ttftj|j�dSr+)r1r2r3r%r,r
rrrrr/Ns
�z!GetLineTestsBadData.test_getlinesN)rrrr*r/rrrrr0Gsr0c@seZdZgZdS)�	EmptyFileN�rrrrrrrrr4Ssr4c@seZdZdgZdS)�SingleEmptyLinerNr5rrrrr6Wsr6c@seZdZgd�ZdS)�GoodUnicode)uá
zb
zabcdef
uááááá
Nr5rrrrr7[sr7c@seZdZdZdS)�
BadUnicodes�abcN)rrrrrrrrr8_sr8c@sdeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dS)�LineCacheTestsc
Cs�tj}|�|td�t�|�|td�t�|�t|td�|�|td�t�|�|td�t�tD]f}t	j
�t|�d}t
|��8}t|�D]\}}|�||||d��q�Wd�qb1s�0Yqbt�d�}|�|g�dS)Ni����g�������?r �.pyza/b/c/__init__.py)r%r&r'�FILENAME�EMPTYr1�	TypeError�INVALID_NAME�MODULES�os�pathr�MODULE_PATHr"r#r,)rr&�entry�filename�filer(r)�emptyrrrr*es
8
zLineCacheTests.test_getlinecCsf|�tjtj�ttjd��}|�t�Wd�n1s<0Yt�tj�}|�	|gd��dS)N�w)rz	def f():
z
    return 3
)
r
rr�TESTFNr"r�SOURCE_3r%r,r')rrr.rrr�test_no_ending_newline~s
(z%LineCacheTests.test_no_ending_newlinecCs�g}tD],}tj�t|�d}|�|�t�|d�q|�|g�dd�|D�}|�	|g�t�
�dd�|D�}|�	|g�dS)Nr;r cSsg|]}|tjvr|�qSr�r%�cache��.0�fnrrr�
<listcomp>��z2LineCacheTests.test_clearcache.<locals>.<listcomp>cSsg|]}|tjvr|�qSrrLrNrrrrQ�rR)r@rArBrrC�appendr%r&ZassertNotEqualr'�
clearcache)r�cachedrDrEZcached_emptyrrr�test_clearcache�s
zLineCacheTests.test_clearcachec	Cs�tj}tjd}|�tj|�t|d��}|�t�Wd�n1sH0Y||d�g}t|��B}t	|�D](\}}|�
||||d��|�|�qrWd�n1s�0Yt|d��}|�t�Wd�n1s�0Yt�
d�t	|�D] \}}|�
||||d���qt�
|�t|��D}t	|�D]*\}}|�
||||d��|�|��q>Wd�n1�s�0YdS)Nr;rHr Zdummy)r%r&rrIr
rr"r�SOURCE_1r#r'rS�SOURCE_2�
checkcache)rr&Zsource_name�sourceZsource_listr(r)rrr�test_checkcache�s*
(

*(


zLineCacheTests.test_checkcachecCs<t�t�}t��|�dt�td��|�|t�t��dS)NF)r%r,r<rTr'�	lazycacher-rrr�test_lazycache_no_globals�s
z(LineCacheTests.test_lazycache_no_globalscCsXt�tt��}t��|�dt�tt���|�dttjt��|�|t�t��dS)NTr )	r%r,�NONEXISTENT_FILENAME�globalsrTr'r\�lenrMr-rrr�test_lazycache_smoke�s�z#LineCacheTests.test_lazycache_smokecCsLt��t�tt��}t��t�t�t�tt��|�|t�t��dSr+)r%rTr,r^r_r\r'�updatecacher-rrr�*test_lazycache_provide_after_failed_lookup�s
z9LineCacheTests.test_lazycache_provide_after_failed_lookupcCs"t��t�tt��t��dSr+)r%rTr\r^r_rYrrrr�test_lazycache_check�sz#LineCacheTests.test_lazycache_checkcCs8t��|�dt�dt���|�dt�dt���dS)NFrz<foo>)r%rTr'r\r_rrrr�test_lazycache_bad_filename�sz*LineCacheTests.test_lazycache_bad_filenamecCsFt��t�tt��}|�dt�tt���|�dttjt��dS)NF�)	r%rTr,r^r_r'r\r`rMr-rrr�test_lazycache_already_cached�s�z,LineCacheTests.test_lazycache_already_cachedcCs�t�t�}|�|�dd�}t�td|��t�t�}Wd�n1sJ0Y|�||�t��t�td|��t�t�}Wd�n1s�0Y|�|g�|�t�t�|�dS)Nc_st�dSr+)�MemoryError)�args�kwargsrrr�raise_memoryerror�sz:LineCacheTests.test_memoryerror.<locals>.raise_memoryerrorrb)r%r,r<Z
assertTruerZ	swap_attrr'rT)rr.rkZlines2Zlines3rrr�test_memoryerror�s

((zLineCacheTests.test_memoryerrorN)rrrr*rKrVr[r]rarcrdrergrlrrrrr9cs!
r9cs4eZdZ�fdd�Zdd�Zdd�Zdd�Z�ZS)	�LineCacheInvalidationTestsc	s
t���t��tjd|_tjd|_tjd|_|j|j|jfD]x}|�	tj
|�t|ddd��"}|�d|�d��Wd�n1s�0Y|�
|tj�t�|�|�|tj�qFt�|j�t|jddd��}|�d	�Wd�n1s�0YdS)
Nz.1z.2z.3rHr)�encodingzprint("I am z")zprint("was modified"))rrr%rTrrI�deleted_file�
modified_file�unchanged_filer
rr"r�assertNotInrMr,�assertInrA�remove)rZfnamerZrrrr�s$
�0
z LineCacheInvalidationTests.setUpcCs@t�|j�|�|jtj�|�|jtj�|�|jtj�dSr+)r%rYrorrrMrsrprqrrrr� test_checkcache_for_deleted_filesz;LineCacheInvalidationTests.test_checkcache_for_deleted_filecCs@t�|j�|�|jtj�|�|jtj�|�|jtj�dSr+)r%rYrprsrorMrrrqrrrr�!test_checkcache_for_modified_filesz<LineCacheInvalidationTests.test_checkcache_for_modified_filecCs<t��|�|jtj�|�|jtj�|�|jtj�dSr+)r%rYrrrorMrprsrqrrrr�!test_checkcache_with_no_parametersz<LineCacheInvalidationTests.test_checkcache_with_no_parameter)rrrrrurvrwrrrrrrm�srm�__main__)#�__doc__r%ZunittestZos.pathrArr!�testr�__file__r<r^r?r=rB�dirnameZ	TEST_PATH�splitr@rCrWrXrJrrr0ZTestCaser4r6r7r8r9rmr�mainrrrr�<module>s8
*