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: //usr/local/lib/python3.7/test/__pycache__/test_shlex.cpython-37.opt-2.pyc
B

��g�,�@s�ddlZddlZddlZddlZdZdZGdd�dej�Zeedd�stx,e	e�D] Z
e
�d�rPe
dkrPeee
�qPWe
d	kr�e��dS)
�Nu�x|x|
foo bar|foo|bar|
 foo bar|foo|bar|
 foo bar |foo|bar|
foo   bar    bla     fasel|foo|bar|bla|fasel|
x y  z              xxxx|x|y|z|xxxx|
\x bar|\|x|bar|
\ x bar|\|x|bar|
\ bar|\|bar|
foo \x bar|foo|\|x|bar|
foo \ x bar|foo|\|x|bar|
foo \ bar|foo|\|bar|
foo "bar" bla|foo|"bar"|bla|
"foo" "bar" "bla"|"foo"|"bar"|"bla"|
"foo" bar "bla"|"foo"|bar|"bla"|
"foo" bar bla|"foo"|bar|bla|
foo 'bar' bla|foo|'bar'|bla|
'foo' 'bar' 'bla'|'foo'|'bar'|'bla'|
'foo' bar 'bla'|'foo'|bar|'bla'|
'foo' bar bla|'foo'|bar|bla|
blurb foo"bar"bar"fasel" baz|blurb|foo"bar"bar"fasel"|baz|
blurb foo'bar'bar'fasel' baz|blurb|foo'bar'bar'fasel'|baz|
""|""|
''|''|
foo "" bar|foo|""|bar|
foo '' bar|foo|''|bar|
foo "" "" "" bar|foo|""|""|""|bar|
foo '' '' '' bar|foo|''|''|''|bar|
\""|\|""|
"\"|"\"|
"foo\ bar"|"foo\ bar"|
"foo\\ bar"|"foo\\ bar"|
"foo\\ bar\"|"foo\\ bar\"|
"foo\\" bar\""|"foo\\"|bar|\|""|
"foo\\ bar\" dfadf"|"foo\\ bar\"|dfadf"|
"foo\\\ bar\" dfadf"|"foo\\\ bar\"|dfadf"|
"foo\\\x bar\" dfadf"|"foo\\\x bar\"|dfadf"|
"foo\x bar\" dfadf"|"foo\x bar\"|dfadf"|
\''|\|''|
'foo\ bar'|'foo\ bar'|
'foo\\ bar'|'foo\\ bar'|
"foo\\\x bar\" df'a\ 'df'|"foo\\\x bar\"|df'a|\|'df'|
\"foo"|\|"foo"|
\"foo"\x|\|"foo"|\|x|
"foo\x"|"foo\x"|
"foo\ "|"foo\ "|
foo\ xx|foo|\|xx|
foo\ x\x|foo|\|x|\|x|
foo\ x\x\""|foo|\|x|\|x|\|""|
"foo\ x\x"|"foo\ x\x"|
"foo\ x\x\\"|"foo\ x\x\\"|
"foo\ x\x\\""foobar"|"foo\ x\x\\"|"foobar"|
"foo\ x\x\\"\''"foobar"|"foo\ x\x\\"|\|''|"foobar"|
"foo\ x\x\\"\'"fo'obar"|"foo\ x\x\\"|\|'"fo'|obar"|
"foo\ x\x\\"\'"fo'obar" 'don'\''t'|"foo\ x\x\\"|\|'"fo'|obar"|'don'|\|''|t'|
'foo\ bar'|'foo\ bar'|
'foo\\ bar'|'foo\\ bar'|
foo\ bar|foo|\|bar|
foo#bar\nbaz|foobaz|
:-) ;-)|:|-|)|;|-|)|
áéíóú|á|é|í|ó|ú|
u1x|x|
foo bar|foo|bar|
 foo bar|foo|bar|
 foo bar |foo|bar|
foo   bar    bla     fasel|foo|bar|bla|fasel|
x y  z              xxxx|x|y|z|xxxx|
\x bar|x|bar|
\ x bar| x|bar|
\ bar| bar|
foo \x bar|foo|x|bar|
foo \ x bar|foo| x|bar|
foo \ bar|foo| bar|
foo "bar" bla|foo|bar|bla|
"foo" "bar" "bla"|foo|bar|bla|
"foo" bar "bla"|foo|bar|bla|
"foo" bar bla|foo|bar|bla|
foo 'bar' bla|foo|bar|bla|
'foo' 'bar' 'bla'|foo|bar|bla|
'foo' bar 'bla'|foo|bar|bla|
'foo' bar bla|foo|bar|bla|
blurb foo"bar"bar"fasel" baz|blurb|foobarbarfasel|baz|
blurb foo'bar'bar'fasel' baz|blurb|foobarbarfasel|baz|
""||
''||
foo "" bar|foo||bar|
foo '' bar|foo||bar|
foo "" "" "" bar|foo||||bar|
foo '' '' '' bar|foo||||bar|
\"|"|
"\""|"|
"foo\ bar"|foo\ bar|
"foo\\ bar"|foo\ bar|
"foo\\ bar\""|foo\ bar"|
"foo\\" bar\"|foo\|bar"|
"foo\\ bar\" dfadf"|foo\ bar" dfadf|
"foo\\\ bar\" dfadf"|foo\\ bar" dfadf|
"foo\\\x bar\" dfadf"|foo\\x bar" dfadf|
"foo\x bar\" dfadf"|foo\x bar" dfadf|
\'|'|
'foo\ bar'|foo\ bar|
'foo\\ bar'|foo\\ bar|
"foo\\\x bar\" df'a\ 'df"|foo\\x bar" df'a\ 'df|
\"foo|"foo|
\"foo\x|"foox|
"foo\x"|foo\x|
"foo\ "|foo\ |
foo\ xx|foo xx|
foo\ x\x|foo xx|
foo\ x\x\"|foo xx"|
"foo\ x\x"|foo\ x\x|
"foo\ x\x\\"|foo\ x\x\|
"foo\ x\x\\""foobar"|foo\ x\x\foobar|
"foo\ x\x\\"\'"foobar"|foo\ x\x\'foobar|
"foo\ x\x\\"\'"fo'obar"|foo\ x\x\'fo'obar|
"foo\ x\x\\"\'"fo'obar" 'don'\''t'|foo\ x\x\'fo'obar|don't|
"foo\ x\x\\"\'"fo'obar" 'don'\''t' \\|foo\ x\x\'fo'obar|don't|\|
'foo\ bar'|foo\ bar|
'foo\\ bar'|foo\\ bar|
foo\ bar|foo bar|
foo#bar\nbaz|foo|baz|
:-) ;-)|:-)|;-)|
áéíóú|áéíóú|
c@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#S)$�	ShlexTestcCstdd�t��D�|_dd�t��D�|_x"|jD]}|d�dd�|d<q0Wx"|jD]}|d�dd�|d<qTWdS)NcSsg|]}|�d�dd��qS)�|N���)�split)�.0�x�r�+/usr/local/lib/python3.7/test/test_shlex.py�
<listcomp>�sz#ShlexTest.setUp.<locals>.<listcomp>cSsg|]}|�d�dd��qS)rNr)r)rrrrr	r
�srz\n�
)�data�
splitlines�
posix_data�replace)�self�itemrrr	�setUp�szShlexTest.setUpcCshxbtt|��D]R}tj||d|d�}|�|||dd�d||d|||dd�f�qWdS)Nr)�comments�z%s: %s != %s)�range�len�shlexr�assertEqual)rrr�i�lrrr	�	splitTest�s
zShlexTest.splitTestcCs<g}t�t�|��}|��}x|r6|�|�|��}qW|S)N)r�io�StringIO�	get_token�append)r�s�retZlex�tokrrr	�oldSplit�s
zShlexTest.oldSplitcCs|j|jdd�dS)NT)r)rr)rrrr	�testSplitPosix�szShlexTest.testSplitPosixcCsnxhtt|j��D]V}|�|j|d�}|�||j|dd�d|j|d||j|dd�f�qWdS)Nrrz%s: %s != %s)rrrr#r)rrrrrr	�
testCompat�s
zShlexTest.testCompatcCsfx`dD]X}d|d|g}dd|ddg}x4|D],}tj|dd�}t|�}|�||d	|�q.WqWdS)
N)
z&&�&z|&z;&z;;&z||rz&|z;|z;;|zecho hi %s echo byezecho hi%secho bye�echo�hi�byeT)�punctuation_charszWhile splitting '%s')r�listr)r�	delimiter�src�ref�ssr �resultrrr	�testSyntaxSplitAmpersandAndPipe�s


z)ShlexTest.testSyntaxSplitAmpersandAndPipecCslxfdD]^}d|d|d|g}dd|ddg}x4|D],}tj|dd	�}t|�}|�||d
|�q4WqWdS)N)�;z;;z;&z;;&zecho hi %s echo byezecho hi%s echo byezecho hi%secho byer'r(r)T)r*zWhile splitting '%s')rr+r)rr,r-r.r/r r0rrr	�testSyntaxSplitSemicolon�s


z"ShlexTest.testSyntaxSplitSemicoloncCsjxddD]\}d|d|d|g}dd|dg}x4|D],}tj|dd	�}t|�}|�||d
|�q2WqWdS)N)�<rzecho hi %s outz
echo hi%s outzecho hi%soutr'r(�outT)r*zWhile splitting '%s')rr+r)rr,r-r.r/r r0rrr	�testSyntaxSplitRedirect�s


z!ShlexTest.testSyntaxSplitRedirectcCsNddg}ddddg}x4|D],}tj|dd�}t|�}|�||d	|�qWdS)
Nz( echo hi )z	(echo hi)�(r'r(�)T)r*zWhile splitting '%s')rr+r)rr-r.r/r r0rrr	�testSyntaxSplitParen�s
zShlexTest.testSyntaxSplitParencCsDddddddddg}d}tj|d	d
�}t|�}|�||d|�dS)Nz~/ar&zb-cz--color=autoz||�dz*.py?z"~/a && b-c --color=auto || d *.py?r)r*zWhile splitting '%s')rr+r)rr.r/r r0rrr	�testSyntaxSplitCustom�s
zShlexTest.testSyntaxSplitCustomcCs�x~ddddddgffD]f\}}tj|dd�}g}x>|��}||jkrFP|d	|jkrZd
}nd}|�||f�q2W|�||�qWdS)Nza && b || c)�ar<)z&&�c)�br<)z||r=)r=r<T)r*rr=r<)rr�eofr*rr)r�source�expectedr Zobserved�t�ttrrr	�testTokenTypes�s
zShlexTest.testTokenTypescCs:tjddd�}|�d|j�|�t|�dddddg�dS)NZa_b__c�_)r*r<r>�__r=)rZassertNotInZ	wordcharsrr+)rr rrr	�testPunctuationInWordCharssz$ShlexTest.testPunctuationInWordCharsc	Cs\tjddd�}|�t|�ddddddg�tjddd�}d	|_|�t|�dddd
dg�dS)Nza  && b  ||  cr&)r*r<z&&r>rr=Tz||)rrr+Zwhitespace_split)rr rrr	�"testPunctuationWithWhitespaceSplits
z,ShlexTest.testPunctuationWithWhitespaceSplitcCsPtjdddd�}|�t|�dddg�tjdddd�}|�t|�dddg�dS)	Nzf >"abc"T)�posixr*�f�>�abcz
f >\"abc\"z"abc")rrr+)rr rrr	�testPunctuationWithPosixsz"ShlexTest.testPunctuationWithPosixcCshdddg}x0dD](}tjdd|d�}t|�}|�||�qWdddg}tjddd	�}|�t|�|�dS)
N�r8rL)FTz'')abcT)rIr*z'')r*)rr+r)rrA�punctr Zslistrrr	�testEmptyStringHandlings


z!ShlexTest.testEmptyStringHandlingcCs�tjtjd}d}d|}|�t�d�d�|�t�|�|�|�t�d�d�x&|D]}|�t�d|�d	|�qXWx&|D]}|�t�d
|�d|�q�WdS)Nz
@%_-+=:,./uéàßz"`$\!rNz''ztest file namez'test file name'z
test%snamez'test%sname'ztest%s'name'z'test%s'"'"'name'"'"'')�stringZ
ascii_letters�digitsrrZquote)rZsafeunquotedZunicode_sampleZunsafe�urrr	�	testQuote(s

zShlexTest.testQuotec	Cs>d}tj|d�}|�|j|�|�t��d|_WdQRXdS)Nz/|$%^)r*F)rrr*ZassertRaises�AttributeError)rr*Zshlex_instancerrr	�testPunctuationCharsReadOnly7s
z&ShlexTest.testPunctuationCharsReadOnlyN)�__name__�
__module__�__qualname__rrr#r$r%r1r3r6r9r;rDrGrHrMrPrTrVrrrr	r�s"
	rrZtestr%�__main__)rrrQZunittestrrZTestCaser�getattr�dirZmethname�
startswith�delattrrW�mainrrrr	�<module>sC@8