Server : LiteSpeed
System : Linux server51.dnsbootclub.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64
User : nandedex ( 1060)
PHP Version : 8.1.33
Disable Function : NONE
Directory :  /opt/cppython/lib/python3.8/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]


Current File : //opt/cppython/lib/python3.8/test/__pycache__/test_uu.cpython-38.pyc
U

>��gV#�@s�dZddlZddlmZddlZddlZddlZddlZddlZdZ	dZ
Gdd�dej�Zdd	d
�Z
Gdd�dej�ZGd
d�dej�ZGdd�dej�Zedkr�e��dS)z%
Tests for uu module.
Nick Mathewson
�N)�supports7The symbols on top of your keyboard are !@#$%^&*()_+|~
sOM5&AE('-Y;6)O;',@;VX@=&]P(&]F('EO=7(@:V5Y8F]A<F0@87)E("% (R0E
*7B8J*"E?*WQ^"@  cs*eZdZdZd
�fdd�	Zdd	�Z�ZS)�FakeIOz�Text I/O implementation using an in-memory buffer.

    Can be a used as a drop-in replacement for sys.stdin and sys.stdout.
    ��utf-8�strict�
csVtt|�jt��|||d�||_||_|rRt|t�s>t|�}|�	|�|�
d�dS)N)�encoding�errors�newliner)�superr�__init__�io�BytesIO�	_encoding�_errors�
isinstance�str�write�seek)�selfZ
initial_valuerr	r
��	__class__��+/opt/cppython/lib/python3.8/test/test_uu.pyrs�

zFakeIO.__init__cCs|��|j���|j|j�S�N)�flush�buffer�getvalue�decoderr�rrrrr,szFakeIO.getvalue)rrrr)�__name__�
__module__�__qualname__�__doc__rr�
__classcell__rrrrrs�rFcCsF|r(td||fd�t�dd�d}ntd||fd�td}|S)Nzbegin %03o %s
�ascii� �`s
`
end
s
 
end
)�bytes�encodedtext�replace)�mode�filename�backtick�resrrr�encodedtextwrapped1s
����r/c@sDeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dS)�UUTestc	Cs�t�t�}t��}t�||d�|�|��tdd��t�t�}t��}t�||dd�|�|��tdd��t�t�}t��}tj||ddd�|�|��tddd��|�t	��t�||ddd�W5QRXdS)N�t1��T�r-)
r
r�	plaintext�uu�encode�assertEqualrr/�assertRaises�	TypeError)r�inp�outrrr�test_encode<s


zUUTest.test_encodec	Cs�dD]x}t�tdd|d��}t��}t�||�|�|��t�t�dtdd|d��}t��}t�||�|�|��t�qdS)N)TFr2r1r4sMUUencoded files may contain many lines,
even some that have 'begin' in them.
)r
rr/r6rr8rr5)rr-r;r<rrr�test_decodeLs��zUUTest.test_decodec
Csjt�dt�}t��}zt�||�|�d�Wn4tjk
rd}z|�t|�d�W5d}~XYnXdS)Ns
begin 644 t1
�No exception raisedzTruncated input file)	r
rr)r6r�fail�Errorr8r�rr;r<�errr�test_truncatedinput[szUUTest.test_truncatedinputc
Csft�d�}t��}zt�||�|�d�Wn4tjk
r`}z|�t|�d�W5d}~XYnXdS)N�r?z'No valid begin line found in input file)r
rr6rr@rAr8rrBrrr�test_missingbeginds
zUUTest.test_missingbeginc	
Cs�d}d}d}||fD]�}|�d��8t�|�}t��}tj||dd�|�|��|�W5QRX|�d��&ddl}|�|d�}|�||�W5QRXqdS)	Nsbegin 644 file
!,___
 
end
sbegin 644 file
!,___
`
end
�3zuu.decode()T)�quiet�uu_codecr)ZsubTestr
rr6rr8r�codecs)	rZencodedtext1Zencodedtext2r5r)r;r<rJZdecodedrrr�test_garbage_paddingms��
zUUTest.test_garbage_paddingcCs<t�t�}t��}d}d}t�|||�|�||���dS)Nztest.txt

overflow.txtstest.txt\n\roverflow.txt)r
rr5r6r7ZassertInr)rr;r<r,Zsafefilenamerrr�test_newlines_escaped�s
zUUTest.test_newlines_escapedc	Cs�d}|�tjd��t�t�|��W5QRXtjrj|�dd�}|�tjd��t�t�|��W5QRXd}|�tjd��t�t�|��W5QRXtjr�|�dd�}|�tjd��t�t�|��W5QRXdS)Ns<begin 644 ../../../../../../../../tmp/test1
$86)C"@``
`
end
Z	directory�/�\s%begin 644 /tmp/test2
$86)C"@``
`
end
)	ZassertRaisesRegexr6rArr
r�os�altsepr*)rZrelative_badZrelative_bad_bsZabsolute_badZabsolute_bad_bsrrr�test_no_directory_traversal�sz"UUTest.test_no_directory_traversalN)
r r!r"r=r>rDrFrKrLrQrrrrr0:s			r0c@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�UUStdIOTestcCstj|_tj|_dSr)�sys�stdin�stdoutrrrr�setUp�szUUStdIOTest.setUpcCs|jt_|jt_dSr)rTrSrUrrrr�tearDown�szUUStdIOTest.tearDowncCsJtt�d��t_t�t_t�dddd�|�tj�	�t
dd��d��dS)Nr%�-r1r2)rr5rrSrTrUr6r7r8rr/rrrrr=�s�zUUStdIOTest.test_encodecCsZttdd��d��t_t�t_t�dd�tj}|jt_|jt_|�|��t	�d��dS)Nr2r1r%rX)
rr/rrSrTrUr6r8rr5)rrUrrrr>�szUUStdIOTest.test_decodeN)r r!r"rVrWr=r>rrrrrR�srRc@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�
UUFileTestcCs<tjd|_tjd|_|�tj|j�|�tj|j�dS)N�i�o)rZTESTFN�tmpin�tmpout�
addCleanup�unlinkrrrrrV�szUUFileTest.setUpc
Cs�t|jd��}|�t�W5QRXt|jd��2}t|jd��}tj|||jdd�W5QRXW5QRXt|jd��}|��}W5QRX|�|t	d|j��tj|j|j|jdd�t|jd��}|��}W5QRX|�|t	d|j��dS)N�wb�rbr3)r+)
�openr\rr5r]r6r7�readr8r/)rZfinZfout�srrrr=�s(zUUFileTest.test_encodec	Cs|t|jd��}|�td|j��W5QRXt|jd��}t�|�W5QRXt|jd��}|��}W5QRX|�|t	�dS�Nr`r3ra�
rbr\rr/r]r6rrcr8r5�r�frdrrrr>�szUUFileTest.test_decodec	Csft|jd��}|�td|j��W5QRXt�|j�t|jd��}|��}W5QRX|�|t	�dSrerfrgrrr�test_decode_filename�szUUFileTest.test_decode_filenamec	Cszt|jd��}|�td|j��W5QRXt|jd��}t�|�W5QRXt|jd��}|�tjtj|�W5QRXdSre)	rbr\rr/r]r6rr9rA)rrhrrr�test_decodetwice�szUUFileTest.test_decodetwicec	Cs�d}t|jd��}|�t||j��W5QRX|�tj|j|tj	B�t|jd��}t
�|�W5QRX|�t�
t�|j�j�|�dS)Ni$r`ra)rbr\rr/r]r^rO�chmod�stat�S_IWRITEr6rr8�S_IMODE�st_mode)rZ
expected_moderhrrr�test_decode_modes�zUUFileTest.test_decode_modeN)	r r!r"rVr=r>rirjrprrrrrY�s

rY�__main__)F)r#Zunittest�testrrOrlrSr6r
r5r)�
TextIOWrapperrr/ZTestCaser0rRrYr �mainrrrr�<module>s 
	vL

F1le Man4ger