HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //proc/thread-self/root/usr/local/lib/python3.7/test/__pycache__/test_glob.cpython-37.pyc
B

��g�1�@s�ddlZddlZddlZddlZddlZddlmZmZmZm	Z	m
Z
Gdd�dej�ZeGdd�dej��Z
edkr|e��dS)�N)�TESTFN�skip_unless_symlink�can_symlink�create_empty_file�
change_cwdc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zedd��Zedd��Ze�ejdkd �d!d"��Zd#d$�Zd%d&�Ze�ejdkd �d'd(��Zd)d*�Zd+d,�Zd-S).�	GlobTestscGstj�tjj|jf|���S)N)�os�path�normpath�join�tempdir)�self�parts�r�*/usr/local/lib/python3.7/test/test_glob.py�norm
szGlobTests.normcs�fdd�|D�S)Ncs g|]}tjj�jf|���qSr)rr	rr)�.0r)r
rr�
<listcomp>sz#GlobTests.joins.<locals>.<listcomp>r)r
Ztuplesr)r
r�joinsszGlobTests.joinscGs<|j|�}tj�|�\}}tj�|�s0t�|�t|�dS)N)rrr	�split�exists�makedirsr)r
r�filename�base�filerrr�mktemps


zGlobTests.mktempcCs�td|_|�dd�|�dd�|�dd�|�dd	�|�d
d�|�d�|�d
�|�ddd
�|�dddd�t�r�t�|�d�|�d��t�d|�d��t�tj�dd�|�d��dS)N�_dir�a�D�aab�Fz.aa�Gz.bb�H�aaa�zzzF�ZZZ�EF�bcd�efg�haZbroken�sym1�sym2�sym3)	rrrrr�symlinkrr	r)r
rrr�setUps


zGlobTests.setUpcCst�|j�dS)N)�shutil�rmtreer)r
rrr�tearDown*szGlobTests.tearDowncOs�t|�dkr|d}ntjj|�}tj�|j|�}tj|f|�}|�tj|f|�|�dd�|D�}|�tjt�|�f|�|�|�tjt�|�f|�|�|S)N�rcSsg|]}t�|��qSr)r�fsencode)r�xrrrr5sz"GlobTests.glob.<locals>.<listcomp>)	�lenrr	rr�globZassertCountEqualZiglobr3)r
r�kwargs�pattern�p�resZbresrrrr6-s
zGlobTests.globcCs<t|�}t|�}|�t|�t|��|�t|�t|��dS)N)�list�assertEqual�set�sorted)r
�l1�l2rrr�assertSequencesEqual_noorder:sz&GlobTests.assertSequencesEqual_noordercCs|j}||�d�|�d�g�||�dd�|�dd�g�||�d�|�d�g�||�d�g�t�d�}|�dd�|D�th�t�tj�tjd��}|�dd�|D�th�t�d	�}|�d
d�|D�t	h�t�tj�t�
tj�d	��}|�dd�|D�t	h�dS)NrrrZzymurgy�*cSsh|]}t|��qSr)�type)r�rrrr�	<setcomp>Hsz.GlobTests.test_glob_literal.<locals>.<setcomp>cSsh|]}t|��qSr)rC)rrDrrrrEJs�*cSsh|]}t|��qSr)rC)rrDrrrrEMscSsh|]}t|��qSr)rC)rrDrrrrEOs)rAr6rr<�strrr	r�curdir�bytesr3)r
�eqr:rrr�test_glob_literal@s

zGlobTests.test_glob_literalcCs�|j}||�d�t|jdddg��||�d�t|jddg��||�d�t|jddg��||�d	�t|jdg��||�d
�t|jddg��||�d�t|jddg��||�d�g�dS)
Nza*rrr#z*az.*z.aaz.bbz?aazaa?zaa[ab]z*q)rAr6�mapr)r
rJrrr�test_glob_one_directoryQsz!GlobTests.test_glob_one_directorycCs�|j}tj�d�dkr8||�ddd�|�ddd�g�n,||�ddd�|�ddd�|�ddd�g�||�ddd�|�ddd�g�dS)NZabCDrr'zE*r&r(z*g)rArr	�normcaser6r)r
rJrrr�test_glob_nested_directory[s"z$GlobTests.test_glob_nested_directorycCs�|j}||�dd�|�dd�g�||�dd�g�||�dddd�|�dddd�g�||�dd	�|�d
d�|�dd
�g�dS)NrBrrz*ar'r(r)z?a?z*Fr#r$rr )rAr6r)r
rJrrr�test_glob_directory_namesfsz#GlobTests.test_glob_directory_namescCs�t�|�d�tj�}|�|g�t�|�d�tj�}|�|g�t�|�d�tj�}|�t|�d�|�t|�|�d�|�d�h|�d�tj|�d�tjhg�dS)NzZ*Zr%zaa*�r#r)r6rr�sepr<r5�assertInr=)r
r:rrr�'test_glob_directory_with_trailing_slashos
z1GlobTests.test_glob_directory_with_trailing_slashc
Cs�t�t�|�d�tj��}|�|g�t�t�|�d�tj��}|�|g�t�t�|�d�tj��}|�t|�d�|�t|�t�|�d��t�|�d��ht�|�d�tj�t�|�d�tj�hg�dS)NzZ*Zr%zaa*rQr#r)	r6rr3rrRr<r5rSr=)r
r:rrr�-test_glob_bytes_directory_with_trailing_slashs
z7GlobTests.test_glob_bytes_directory_with_trailing_slashcCs�|j}||�d�|�d�g�||�dd�|�dd�|�dd�g�|�|�dtj�|�d�g|�d�tjgg�||�dd�|�dd�|�dd	�|�dd�g�dS)
Nr,rBr&r(z*Fr#r$rr )rAr6rrSrrR)r
rJrrr�test_glob_symlinks�s 
zGlobTests.test_glob_symlinkscCsb|j}||�d�|�d�|�d�|�d�g�||�d�|�d�g�||�d�|�d�g�dS)Nzsym*r*r+r,)rAr6r)r
rJrrr�test_glob_broken_symlinks�s
z#GlobTests.test_glob_broken_symlinks�win32zWin32 specific testcCs�|j}|t�d�g�|t�d�g�|t�d�g�|t�d�g�|t�d�dg�|t�d�dg�|t�d�g�|t�d�g�dS)	Nz*:s*:z?:s?:z\\?\c:\s\\?\c:\z\\*\*\s\\*\*\)rAr6)r
rJrrr�test_glob_magic_in_drive�sz"GlobTests.test_glob_magic_in_drivecCs4|�t�|�|�|�t�t�|��t�|��dS)N)r<r6�escaperr3)r
�argZexpectedrrr�check_escape�szGlobTests.check_escapecCsF|j}|dd�|dd�|dd�|dd�|dd	�|d
d�dS)N�abc�[z[[]�?z[?]rBz[*]z[[_/*?*/_]]z[[][[]_/[*][?][*]/_]]z
/[[_/*?*/_]]/z/[[][[]_/[*][?][*]/_]]/)r\)r
�checkrrr�test_escape�s




zGlobTests.test_escapecCsF|j}|dd�|dd�|dd�|dd�|d	d
�|dd�dS)
Nz?:?z?:[?]z*:*z*:[*]z\\?\c:\?z
\\?\c:\[?]z\\*\*\*z	\\*\*\[*]z//?/c:/?z
//?/c:/[?]z//*/*/*z	//*/*/[*])r\)r
r`rrr�test_escape_windows�s




zGlobTests.test_escape_windowscOs|j|ddi|��S)N�	recursiveT)r6)r
rr7rrr�rglob�szGlobTests.rglobcs\|j}ddddddddd	d
ddg}t�r<|d
dddddg7}||�d�|jd3|���||�tjd�|jtjdffdd�|D����dddddg}t�r�|ddg7}||�dd�|jd4|���||�dd�|�dddddd��||�d �|�dd	d��ddg}t��r|dg7}||�dd!�|j|��dd
ddg}t��rN|dg7}||�dd"�|j|��||�dd"d�g�||�dd#d$�|�dd��||�ddd#�|�d��t|j����tjj	�|t
j
dd%d&��fd'd(�|D��|t
j
�dd�d%d&��fd)d(�|D��|t
j
�dd$�d%d&��fd*d(�|D��|t
j
�tjd�d%d&��tjd�g�fd+d(�|D��|t
j
�tjdd�d%d&��tjd�g�fd,d(�|D��|t
j
�tjdd$�d%d&��fd-d(�|D��|t
j
�dd.�d%d&��d/d0�g�|t
j
d1d%d&�g��dd#d!�d!g}t��r4|�d2d!�g7}|t
j
�dd!�d%d&�|�WdQRXdS)5N)r&)r%)r)rr)rr')rr'r&)rr'r()rr'r(r))r#)r#r$)r)rr )r*)r+)r,)r,r&)r,r()r,r(r)z**��rfcss|]}tjf|VqdS)N)rrH)r�irrr�	<genexpr>�sz0GlobTests.test_recursive_glob.<locals>.<genexpr>)rrf)rr'rf)rr'r(rf)r#rf)rrf)r,rf)r,r(rfrza**r&z*Fr'rBT)rccsg|]}�|��qSrr)rrg)rrrr�sz1GlobTests.test_recursive_glob.<locals>.<listcomp>csg|]}�|��qSrr)rrg)rrrr�scsg|]}�|��qSrr)rrg)rrrr�scsg|]}�tjf|���qSr)rrH)rrg)rrrr�scsg|]}�tjf|���qSr)rrH)rrg)rrrrscsg|]}�tjf|���qSr)rrH)rrg)rrrrszzz*Fr#r$z**zz*Fr,)re)re)rArrdrrrHrrr	rr6)r
rJZfull�dirs�expectr)rr�test_recursive_glob�sv"



"""zGlobTests.test_recursive_globN)�__name__�
__module__�__qualname__rrrr.r1r6rArKrMrOrPrTrUrrVrW�unittestZ
skipUnless�sys�platformrYr\rarbrdrkrrrrrs*

		
rc@seZdZdd�ZdS)�SymlinkLoopGlobTestsc	Cstd}t�|�|�tj|�t|����t�d�ttj�	dd��t�
tjtj�	dd��tjddd�}|�
t|�tt|���t|�}d}xh|r�tjj	dgdg|�}|�||�|�|�|s�Ptj�	|d�}|�||�|�|�|d	7}q�Wtjtj�	dd�dd�}|�
t|�tt|���t|�}d}xH|�r�tjj	dgdg|dg�}|�||�|�|�|d	7}�q:Wtjtj�	dd
�dd�}|�
t|�tt|���t|�}d}xH|�rtjj	dgdg|d
g�}|�||�|�|�|d	7}�q�WWdQRXdS)Nr�dirr�linkz**T)rcrr2rf)rrrZ
addCleanupr/r0rrr	rr-rHr6r<r5r=rS�remove)r
r�results�depthr	rrr�
test_selflinksN





z"SymlinkLoopGlobTests.test_selflinkN)rlrmrnrxrrrrrrsrr�__main__)r6rr/rproZtest.supportrrrrrZTestCaserrrrl�mainrrrr�<module>s
/