Your IP : 216.73.216.60


Current Path : /opt/alt/python38/lib64/python3.8/test/__pycache__/
Upload File :
Current File : //opt/alt/python38/lib64/python3.8/test/__pycache__/test_linecache.cpython-38.opt-1.pyc

U

i�f,�@s dZddlZddlZddlZddlZddlZddlmZej	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�Ze dk�re�!�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)�TempFilec	sJt���tjdd��}|j|_|�|j�W5QRX|�t	j
|j�dS)NF)�delete)�super�setUp�tempfileZNamedTemporaryFile�name�	file_name�write�file_byte_string�
addCleanupr�unlink)�self�fp��	__class__��8/opt/alt/python38/lib64/python3.8/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)Nrzutf-8)�join�	file_list�encoderrr�rrrrr5szGetLineTestsGoodData.setUpc	Cs^t�|j��H}t|�D]8\}}|�d�s0|d7}t�|j|d�}|�||�qW5QRXdS)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*)r0r1r2r$r+r
rrrrr.Ns
�z!GetLineTestsBadData.test_getlinesN)rrrr)r.rrrrr/Gsr/c@seZdZgZdS)�	EmptyFileN�rrrrrrrrr3Ssr3c@seZdZdgZdS)�SingleEmptyLinerNr4rrrrr5Wsr5c@seZdZddddgZdS)�GoodUnicodeuá
zb
zabcdef
uááááá
Nr4rrrrr6[sr6c@seZdZdZdS)�
BadUnicodes�abcN)rrrrrrrrr7_sr7c@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]R}t	j
�t|�d}t
|��.}t|�D]\}}|�||||d��q�W5QRXqbt�d�}|�|g�dS)Ni����g�������?r�.pyza/b/c/__init__.py)r$r%r&�FILENAME�EMPTYr0�	TypeError�INVALID_NAME�MODULES�os�pathr�MODULE_PATHr!r"r+)rr%�entry�filename�filer'r(�emptyrrrr)es
$
zLineCacheTests.test_getlinec	CsT|�tjtj�ttjd��}|�t�W5QRXt�tj�}|�	|dddg�dS)N�wrz	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:rcSsg|]}|tjkr|�qSr�r$�cache��.0�fnrrr�
<listcomp>�s
z2LineCacheTests.test_clearcache.<locals>.<listcomp>cSsg|]}|tjkr|�qSrrKrMrrrrP�s
)r?r@rArrB�appendr$r%ZassertNotEqualr&�
clearcache)r�cachedrCrDZcached_emptyrrr�test_clearcache�s
zLineCacheTests.test_clearcachec	Cs:tj}tjd}|�tj|�t|d��}|�t�W5QRX||d�g}t|��8}t	|�D](\}}|�
||||d��|�|�q^W5QRXt|d��}|�t�W5QRXt�
d�t	|�D]\}}|�
||||d��q�t�
|�t|��:}t	|�D]*\}}|�
||||d��|�|��qW5QRXdS)Nr:rGrZdummy)r$r%rrHr
rr!r�SOURCE_1r"r&rQ�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;rRr&�	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�globalsrRr&rZ�lenrLr,rrr�test_lazycache_smoke�s�z#LineCacheTests.test_lazycache_smokecCsLt��t�tt��}t��t�t�t�tt��|�|t�t��dSr*)r$rRr+r\r]rZr&�updatecacher,rrr�*test_lazycache_provide_after_failed_lookup�s
z9LineCacheTests.test_lazycache_provide_after_failed_lookupcCs"t��t�tt��t��dSr*)r$rRrZr\r]rWrrrr�test_lazycache_check�sz#LineCacheTests.test_lazycache_checkcCs8t��|�dt�dt���|�dt�dt���dS)NFrz<foo>)r$rRr&rZr]rrrr�test_lazycache_bad_filename�sz*LineCacheTests.test_lazycache_bad_filenamecCsFt��t�tt��}|�dt�tt���|�dttjt��dS)NF�)	r$rRr+r\r]r&rZr^rLr,rrr�test_lazycache_already_cached�s�z,LineCacheTests.test_lazycache_already_cachedc	Cs�t�t�}|�|�dd�}t�td|��t�t�}W5QRX|�||�t��t�td|��t�t�}W5QRX|�|g�|�t�t�|�dS)Nc_st�dSr*)�MemoryError)�args�kwargsrrr�raise_memoryerror�sz:LineCacheTests.test_memoryerror.<locals>.raise_memoryerrorr`)r$r+r;Z
assertTruerZ	swap_attrr&rR)rr-riZlines2Zlines3rrr�test_memoryerror�s

zLineCacheTests.test_memoryerrorN)rrrr)rJrTrYr[r_rarbrcrerjrrrrr8cs!
r8�__main__)"�__doc__r$ZunittestZos.pathr@rr Ztestr�__file__r;r\r>r<rA�dirnameZ	TEST_PATH�splitr?rBrUrVrIrrr/ZTestCaser3r5r6r7r8r�mainrrrr�<module>s6