403Webshell
Server IP : 118.27.122.248  /  Your IP : 216.73.216.230
Web Server : Apache
System : Linux web0264.sh.tyo1 4.18.0-553.79.1.lve.el7h.x86_64 #1 SMP Wed Oct 15 16:34:46 UTC 2025 x86_64
User : c9415830 ( 11735)
PHP Version : 8.4.17
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /opt/alt/python36/lib64/python3.6/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/alt/python36/lib64/python3.6/test/__pycache__/test_compile.cpython-36.opt-2.pyc
3

�
�^�n�@s�ddlZddlZddlZddlZddlZddlZddlZddlZddlm	Z	ddl
mZmZGdd�dej
�ZGdd�dej
�Zedkr�ej�dS)	�N)�support)�
script_helper�FakePathc@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#d$�Zejd%kr�d&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�Zd6d7�Zd8d9�Z d:d;�Z!d<d=�Z"d>d?�Z#e$j%d@dA��Z&dBdC�Z'dDdE�Z(dFdG�Z)dHdI�Z*e$j%dJdK��Z+dLdM�Z,dNdO�Z-e$j%dPdQ��Z.e$j%dRdS��Z/dTdU�Z0dVdW�Z1dXS)Y�
TestSpecificscCst|dd�dS)Nz<single>�single)�compile)�self�source�r
�1/opt/alt/python36/lib64/python3.6/test_compile.py�compile_singleszTestSpecifics.compile_singlecCs|jt|j|�dS)N)�assertRaises�SyntaxErrorr)rr	r
r
r�assertInvalidSinglesz!TestSpecifics.assertInvalidSinglecCstddd�tddd�dS)N�hiz<test>�execzhi
)r)rr
r
r�test_no_ending_newlinesz$TestSpecifics.test_no_ending_newlinecCstddd�dS)N�z<test>r)r)rr
r
r�
test_emptyszTestSpecifics.test_emptycCs4tddd�tddd�tddd�tddd�dS)Nz
z<test>r�
zhi
stuff
def f():
    pass
z(this_is
really_old_mac
def f():
    pass)r)rr
r
r�test_other_newlinessz!TestSpecifics.test_other_newlinescCsH|jttddd�ddl}|j}t|dd�|jd|�t|d|�dS)Nz
__debug__ = 1�?rr�	__debug__ZsureF)r
rr�builtinsr�setattr�assertEqual)rr�prevr
r
r�test_debug_assignment!sz#TestSpecifics.test_debug_assignmentcCsX|jttd�|jttd�|jttd�|jttd�|jttd�|jttd�dS)Nzlambda a,a:0zlambda a,a=1:0zlambda a=1,a=1:0zdef f(a, a): passzdef f(a = 0, a = 1): passzdef f(a): global a; a = 1)r
r�evalr)rr
r
r�test_argument_handling*sz$TestSpecifics.test_argument_handlingcCs|jttddd�dS)Nz1+*3�filenamer)r
rr)rr
r
r�test_syntax_error3szTestSpecifics.test_syntax_errorcCs|jttddd�dS)Nz	f(None=1)z<string>r)r
rr)rr
r
r�test_none_keyword_arg6sz#TestSpecifics.test_none_keyword_argcCs|jttd�dS)Nzdef f(a): global a; a = 1)r
rr)rr
r
r�test_duplicate_global_local9sz)TestSpecifics.test_duplicate_global_localcCs.Gdd�d�}|�}t�}td||�|j|jd�ytd||�Wntk
rXYnX|jd�td||�|j|jdtd	�f�td
||�|j|jd|f�td||�|j|jd|f�|jttd|�Gdd
�d
�}|�}|jttd||�Gdd�dt	�}|�}td||�|j|dd�dS)Nc@s$eZdZdd�Zdd�Zdd�ZdS)zBTestSpecifics.test_exec_with_general_mapping_for_locals.<locals>.McSs|dkrdSt�dS)N�a�)�KeyError)r�keyr
r
r�__getitem__@szNTestSpecifics.test_exec_with_general_mapping_for_locals.<locals>.M.__getitem__cSs||f|_dS)N)�results)rr'�valuer
r
r�__setitem__DszNTestSpecifics.test_exec_with_general_mapping_for_locals.<locals>.M.__setitem__cSstd�S)N�xyz)�list)rr
r
r�keysFszGTestSpecifics.test_exec_with_general_mapping_for_locals.<locals>.M.keysN)�__name__�
__module__�__qualname__r(r+r.r
r
r
r�M>sr2zz = a�zr%zz = bzDid not detect a KeyErrorz	z = dir()r,z
z = globals()zz = locals()c@seZdZdS)zBTestSpecifics.test_exec_with_general_mapping_for_locals.<locals>.AN)r/r0r1r
r
r
r�A[sr4c@seZdZdd�ZdS)zBTestSpecifics.test_exec_with_general_mapping_for_locals.<locals>.DcSs|dkrdStj||�S)Nr$r%)�dictr()rr'r
r
rr(cszNTestSpecifics.test_exec_with_general_mapping_for_locals.<locals>.D.__getitem__N)r/r0r1r(r
r
r
r�Dbsr6)r3r%)
�globalsrrr)�	NameError�failr-r
�	TypeErrorr5)rr2�m�gr4r6�dr
r
r�)test_exec_with_general_mapping_for_locals<s0
z7TestSpecifics.test_exec_with_general_mapping_for_localscCs@ddd}i}d|fd}t||�|j|dd�d�dS)	Nz	x = x or z-xi�	z�
def f(x):
    %s
    %s
    %s
    %s
    %s
    %s
    %s
    %s
    %s
    %s
    # the expressions above have no effect, x == argument
    while x:
        x -= 1
        # EXTENDED_ARG/JUMP_ABSOLUTE here
    return x
�
�f�r)rr)rZlongexprr<�coder
r
r�test_extended_argks

zTestSpecifics.test_extended_argcCs|jttd�dS)Nzdef f(a=1, b): pass)r
rr)rr
r
r�test_argument_order�sz!TestSpecifics.test_argument_ordercCs<|jttd�|jttd�|jttd�|jttd�dS)NZ2ez2.0e+z1e-z3-4e/21)r
rr)rr
r
r�test_float_literals�sz!TestSpecifics.test_float_literalscCsd}t|dd�dS)Nz
if 1:
    if 2:
        passz<string>r)r)r�sr
r
r�test_indentation�szTestSpecifics.test_indentationcCsDdjdgddg�}t|dd�}|j|jd�|j|jt��dS)Nr�
�Zspam�fnri)�joinrr�co_firstlineno�	co_lnotab�bytes)rZs256�cor
r
r�test_leading_newlines�sz#TestSpecifics.test_leading_newlinescCs�xd<D]}|jtt|�qW|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd �d!�|jtd"�d#�|jtd$�d�|jtd%�d&�|jtd'�d�|jtd(�d�|jtd)�d*�|jtd+�d*�|jtd,�d*�|jtd-�d*�|jtd.�d/�|jtd0�d1�|jtd2�d3�|jtd4�d5�|jtd6�d=�|jtd8�d9�|jtd:�d>�dS)?N�077787�0xj�0x.�0e�090000000000000�080000000000000�000000000000009�000000000000008�0b42�0BADCAFE�0o123456789�0b1.1�0o4.2�0b101j2�0o153j2�0b100e1�0o777e1�0777�000777�000000000000007Z0xff�z0777.i	z0777.0Z8000000000000000000000000000000000000000000000000000777e0Z0777e1iZZ0e0rz	0000e-012z09.5g#@Z0777jyH�@Z000Z00jyz00.0Z0e3z090000000000000.g聰v�Bz&090000000000000.0000000000000000000000Z090000000000000e0z090000000000000e-0Z090000000000000jy聰v�Bz000000000000008.g @z000000000000009.g"@Z0b101010�*z-0b000000000010�Z0o777i�z
-0o0000010�)rQrRrSrTrUrVrWrXrYrZr[r\r]r^r_r`rarbrcrd���i����)r
rrr)r�argr
r
r�!test_literals_with_leading_zeroes�s<z/TestSpecifics.test_literals_with_leading_zeroescCs�tjdkr4d}|jt|�d�|jtd|�d�n>tjdkrhd}|jt|�d�|jtd|�d
�n
|jd�|jtd	tjd
�t�|jtd	tjd�t�dS)Ni���Z
0xffffffffl���-l����Z0xffffffffffffffffl����z)How many bits *does* this machine have???z%s�rgl������l��������)�sys�maxsizerrr9�assertIsInstance�int)rZall_one_bitsr
r
r�test_unary_minus�s


zTestSpecifics.test_unary_minusl����c
CsLd}d}d}d}d	}d
}d}d}x&|jjjD]}	|	dk	r,|j|	t�q,WdS)
N��������rsl����rtl����rul����rvl��������)�test_32_63_bit_values�__code__�	co_constsrprq)
rr$�b�cr=�er@r<�h�variabler
r
rrw�sz#TestSpecifics.test_32_63_bit_valuescCs(dpd\}}|j|d�|j|d�dS)Nrm���)rmrr)rrmr)r)r�i�jr
r
r�test_sequence_unpacking_error�sz+TestSpecifics.test_sequence_unpacking_errorcCsZddddddddd	d
ddg}x8|D]0}|d
7}|jtt|dd�|jtt|dd�q"WdS)NzNone = 0z	None += 0z__builtins__.None = 0zdef None(): passzclass None: passz(a, None) = 0, 0zfor None in range(10): passzdef f(None): passzimport Nonezimport x as Nonezfrom x import Nonezfrom x import y as NonerH�tmprr)r
rr)rZstmts�stmtr
r
r�test_none_assignment�s 
z"TestSpecifics.test_none_assignmentcCs�ddddddddd	d
ddd
ddg}ddddddddddddddddd d!d"d#d$d%g}x|D]}t|d&d'�qXWx|D]}|jtt|d&d'�qrWdS)(Nz
import syszimport os, syszimport os as barzimport os.path as barz0from __future__ import nested_scopes, generatorsz2from __future__ import (nested_scopes,
generators)z3from __future__ import (nested_scopes,
generators,)z%from sys import stdin, stderr, stdoutz'from sys import (stdin, stderr,
stdout)z(from sys import (stdin, stderr,
stdout,)z(from sys import (stdin
, stderr, stdout)z)from sys import (stdin
, stderr, stdout,)z7from sys import stdin as si, stdout as so, stderr as sez9from sys import (stdin as si, stdout as so, stderr as se)z:from sys import (stdin as si, stdout as so, stderr as se,)zimport (os, sys)zimport (os), (sys)zimport ((os), (sys))zimport (syszimport sys)zimport (os,)zimport os As barzimport os.path a barzfrom sys import stdin As stdoutzfrom sys import stdin a stdoutzfrom (sys) import stdinz%from __future__ import (nested_scopesz%from __future__ import nested_scopes)z0from __future__ import nested_scopes,
generatorszfrom sys import (stdinzfrom sys import stdin)z%from sys import stdin, stdout,
stderrzfrom sys import stdin sizfrom sys import stdin,zfrom sys import (*)z(from sys import (stdin,, stdout, stderr)z from sys import (stdin, stdout),r�r)rr
r)rZsucceedr9r�r
r
r�test_import�sR

zTestSpecifics.test_importcCs.dd�}|�\}}|jt|j�t|j��dS)NcSsddd�}ddd�}||fS)NrmcSs|S)Nr
)�xr
r
r�<lambda>.szITestSpecifics.test_for_distinct_code_objects.<locals>.f.<locals>.<lambda>rgcSs|S)Nr
)r�r
r
rr�/s)rm)rgr
)�f1�f2r
r
rr@-s

z7TestSpecifics.test_for_distinct_code_objects.<locals>.f)�assertNotEqual�idrx)rr@r�r�r
r
r�test_for_distinct_code_objects+s
z,TestSpecifics.test_for_distinct_code_objectscCsdd�}|j|j�dS)NcSsdS)NZfoor
r
r
r
rr�5sz/TestSpecifics.test_lambda_doc.<locals>.<lambda>)ZassertIsNone�__doc__)r�lr
r
r�test_lambda_doc4szTestSpecifics.test_lambda_doccCs�d}|jtt|dd�d}t|dd�|jt|�d�d}|jt|�d�d}|jt|�d�d	}|jt|�d�d
}|jt|�d�d}|jt|�d�d
}|jt|�d�d}|jt|�d�dS)Ns## -*- coding: badencoding -*-
pass
r�ru%# -*- coding: badencoding -*-
"¤"
u¤u"¤"
s"¤"
�¤s# -*- coding: latin1 -*-
"¤"
s# -*- coding: utf-8 -*-
"¤"
s"# -*- coding: iso8859-15 -*-
"¤"
u€u*"""\
# -*- coding: iso8859-15 -*-
¤"""
u!# -*- coding: iso8859-15 -*-
¤s("""\
# -*- coding: iso8859-15 -*-
¤"""
u# -*- coding: iso8859-15 -*-
¤)r
rrrr)rrBr
r
r�
test_encoding8s&zTestSpecifics.test_encodingcCs^Gdd�dt�}|�}d|d<|j|dd�|dd7<|j|dd�|d=|jd|�d|d<|j|dd�|d	d7<|j|d
d�|d=|jd|�d|dd�<|j|dd�d�|dd�d7<|j|dd�d�|dd�=|jtdd�|�d|dd�dd�f<|j|dd�dd�fd�|dd�dd�fd7<|j|dd�dd�fd�|dd�dd�f=|jtdd�tdd�f|�d|ddd�<|j|ddd�d�|ddd�d7<|j|ddd�d�|ddd�=|jtddd�|�d|ddd�ddd�f<|j|ddd�ddd�fd�|ddd�ddd�fd7<|j|ddd�ddd�fd�|ddd�ddd�f=|jtddd�tddd�f|�d|d<|j|dd�|dd7<|j|dd�|d=|jt|�d|d
<|j|dd�|dd7<|j|dd�|d=|jttf|�dS)Nc@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)z.TestSpecifics.test_subscripts.<locals>.str_mapcSs
i|_dS)N)�data)rr
r
r�__init__Qsz7TestSpecifics.test_subscripts.<locals>.str_map.__init__cSs|jt|�S)N)r��str)rr'r
r
rr(Ssz:TestSpecifics.test_subscripts.<locals>.str_map.__getitem__cSs||jt|�<dS)N)r�r�)rr'r*r
r
rr+Usz:TestSpecifics.test_subscripts.<locals>.str_map.__setitem__cSs|jt|�=dS)N)r�r�)rr'r
r
r�__delitem__Wsz:TestSpecifics.test_subscripts.<locals>.str_map.__delitem__cSst|�|jkS)N)r�r�)rr'r
r
r�__contains__Ysz;TestSpecifics.test_subscripts.<locals>.str_map.__contains__N)r/r0r1r�r(r+r�r�r
r
r
r�str_mapPs
r�rmrg�.)rmrm)rmrm)rmrm)rmrm)rmrm)rmrm)..)..)..)..)..)�objectrZassertNotIn�slice�Ellipsis)rr�r=r
r
r�test_subscriptsMsd
    zTestSpecifics.test_subscriptscCsbd}|djdd�td�D��;}|jtt|dd�d}|djdd�td	�D��;}t|dd�dS)
Nzdef f(%s): passz, css|]}d||fVqdS)za%d:%dNr
)�.0r�r
r
r�	<genexpr>�sz6TestSpecifics.test_annotation_limit.<locals>.<genexpr>rIrrcss|]}d||fVqdS)za%d:%dNr
)r�r�r
r
rr��sre)rK�ranger
rr)rrFr
r
r�test_annotation_limit�sz#TestSpecifics.test_annotation_limitcCsZGdd�d�}|jd|jjj�|jd|jjj�|jd|jjj�|jd|jjj�dS)Nc@seZdZdd�ZdS)z&TestSpecifics.test_mangling.<locals>.AcSsd}d}ddl}ddl}dS)Nrmrgr)�_A__mangled_modZ__package__.module)�_A__mangled�__not_mangled__r��__package__r
r
rr@�sz(TestSpecifics.test_mangling.<locals>.A.fN)r/r0r1r@r
r
r
rr4�sr4r�r�r�r�)�assertInr@rx�co_varnames)rr4r
r
r�
test_mangling�s
zTestSpecifics.test_manglingc	
Cs8t}|j�jd�r|dd�}t|d��}|j�}WdQRXddgddgdd	gd
dg||gg}xv|D]n\}}t|d|d
�}t|d|d
tj�}|jt	|�tj
k�t|d|d
�}|j||�|j|jd|�qdWtddd
tj�}|j
tt|dd�|j
tttj�dd
�tj
�}tj�g|_|j
tt|dd
�dS)NZpycrm�rz<assign>zx = 5z	<ifblock>zif True:
    pass
z
<forblock>z!for n in [1, 2, 3]:
    print(n)
z	<deffunc>zdef foo():
    pass
foo()
z%s1rz%s2z%s3zprint(1)z<string>z<ast>rr)�__file__�lower�endswith�open�readr�_astZ
PyCF_ONLY_AST�
assertTrue�typeZModuler�co_filenamer
r:ZIfZBoolOpZbody)	rZfnamer@Z	fcontentsZsample_coderBZco1ZastZco2r
r
r�test_compile_ast�s.
zTestSpecifics.test_compile_astcs:d��fdd�}|�|�|�|�i}|j|ddd��dS)Nrcs�d7��S)Nrmr
r
)r�r
rr@�sz3TestSpecifics.test_dict_evaluation_order.<locals>.frg�)rmr�)r)rr@r=r
)r�r�test_dict_evaluation_order�sz(TestSpecifics.test_dict_evaluation_ordercCs�x&dD]}td|d�}|j|jd�qWxHtd�td�fD]4}|jt��td|d�}WdQRX|j|jd�q:W|jttdt	d�d�dS)N�file.py�file.py�passr)r�r�)
rrr��	bytearray�
memoryviewZassertWarns�DeprecationWarningr
r:r-)rr rBr
r
r�test_compile_filename�s
z#TestSpecifics.test_compile_filenamecCs@d}t|dd�}x*|jD] }t|tj�r|j|j|j�qWdS)Nzdef f(): pass
def g(): passZmyfiler)rry�
isinstance�types�CodeType�assertIsr�)rrFr{�objr
r
r�test_same_filename_used�s
z%TestSpecifics.test_same_filename_usedcCs�|jd�|jd�|jd�|jd�|jd�|jd�|jd�|jd�|jd	�|jd
�|jd�|jd�|jd
�|jd�dS)Nz1 + 2z
1 + 2z1 + 2
z1 + 2

z1 + 2		
z1 + 2		
        z1 + 2 # one plus twoz1; 2zimport sys; syszdef f():
   passzwhile False:
   passz
if x:
   f(x)zif x:
   f(x)
else:
   g(x)zclass T:
   pass)r)rr
r
r�test_single_statement�s












z#TestSpecifics.test_single_statementcCsT|jd�|jd�|jd�|jd�|jd�|jd�|jd�|jd�dS)	Nz1
2z
def f(): passza = 13
b = 187zdel x
del yzf()
g()zf()
# blah
blah()zf()
xy # blah
blah()zx = 5 # comment
x = 6
)r)rr
r
r�test_bad_single_statement�s






z'TestSpecifics.test_bad_single_statementcCsfd}tj��B}tjj|d�}t|d��}|j|�WdQRXtj|�d}WdQRX|j	d|j
�dS)Ns0000
00000000000

�
zbad.py�wbrs	Non-UTF-8)�tempfile�TemporaryDirectory�os�pathrKr��writer�run_python_until_endr��err)r�src�tmpdrJ�fp�resr
r
r�"test_particularly_evil_undecodable	s
z0TestSpecifics.test_particularly_evil_undecodablecCsfd}tj��B}tjj|d�}t|d��}|j|�WdQRXtj|�d}WdQRX|j	d|j
�dS)Ns#
#�
zbad.pyr�rs	Non-UTF-8)r�r�r�r�rKr�r�rr�r�r�)rr�r�rJr�r�r
r
r�$test_yet_more_evil_still_undecodables
z2TestSpecifics.test_yet_more_evil_still_undecodablecsTtj�d�t�d�����fdd�}|dd�|dd�|dd�|dd	�dS)
Nr�g�?c	sX||�}�j|�||�}dj||��}�jt|d���j|�WdQRXdS)NzCompiling ({!r} + {!r} * {}))�msg)r�formatr
�RecursionError)�prefixZrepeatedZ	expect_okZbrokenZdetails)�
fail_depthr�
success_depthr
r�check_limit)s

z@TestSpecifics.test_compiler_recursion_limit.<locals>.check_limitr$z()z.bz[0]z*a)rn�getrecursionlimitrq)rr�r
)r�rr�r�test_compiler_recursion_limits		


z+TestSpecifics.test_compiler_recursion_limitcCs|jtd��tddd�WdQRX|jtd��ttd�dd�WdQRXttd�dd
�dd�}|jt|�d�ttd�dd�dd�}|jt|�d�ttd	�dd�dd�}|jt|�d�|jttd�dd��d�t�}ttd
�dd�|�|j|dd�dS)Nzcannot contain nullz123z<dummy>rs123rm�s1234s$23$sax = 123r�r%rrrrr)ZassertRaisesRegex�
ValueErrorrr�rrr5r)rrB�	namespacer
r
r�test_null_terminated7sz"TestSpecifics.test_null_terminatedcCs>x8|jjD]}t|�t|�kr
Pq
W|jd||jjf�dS)Nz unable to find constant %r in %r)rxry�reprr9)r�funcZexpected�constr
r
r�check_constantKs
zTestSpecifics.check_constantcs��fdd�}|d�|d�|d�|d�|d�dd�dd�}}�j|j|j��j|t��jt|��tt��d	d�d	d�}}�j|j|j��j|tdh���j|d��dS)
Ncs`i}d||f}t||�|d}|d}�j|j|j��j||��jt|��t|��dS)Nzf1, f2 = lambda: %r, lambda: %rr�r�)rr�rxr�rr�)r��nsrBr�r�)rr
r�check_same_constantZs
z?TestSpecifics.test_merge_constants.<locals>.check_same_constantrgsabc�abccSsdS)N.r
r
r
r
rr�lsz4TestSpecifics.test_merge_constants.<locals>.<lambda>cSs|dkS)Nr>rr
)r�r
r
rr�ss)r�rxr�r�rr��	frozensetr�)rr�r�r�r
)rr�test_merge_constantsUs
z"TestSpecifics.test_merge_constantscCs(dd�}|jdttj|��dj�dS)NcSsdS)Nr�Zunreachable)�RuntimeErrorr
r
r
r�unused_code_at_endszcTestSpecifics.test_peephole_opt_unreachable_code_array_access_in_bounds.<locals>.unused_code_at_endZRETURN_VALUErmr)rr-�disZget_instructions�opname)rr�r
r
r�9test_peephole_opt_unreachable_code_array_access_in_bounds|szGTestSpecifics.test_peephole_opt_unreachable_code_array_access_in_boundscs
�fdd�}|dd�|d
d�|dd�|dd�|dd�dd�d	d�}}�j|j|j��j|d��j|d��jt|��td���jt|��td��dd�dd�}}�j|j|j��j|tdh���j|tdh���j|d���j|d��dS)Ncs�i}td||f|�|d}|d}�j|j|j��j|j|j��j||��j||��jt|��t|���jt|��t|��dS)Nzf1, f2 = lambda: %r, lambda: %rr�r�)r�assertIsNotrxr�r�rr�)Zconst1Zconst2r�r�r�)rr
r�check_different_constants�szJTestSpecifics.test_dont_merge_constants.<locals>.check_different_constantsr�r$�acSsdS)N�r�r
r
r
r
rr��sz9TestSpecifics.test_dont_merge_constants.<locals>.<lambda>cSsdS)Nyy��r
r
r
r
rr��s�cSs|dkS)Nr>rr
)r�r
r
rr��scSs|dkS)N�>r�r
)r�r
r
rr��sr�g�)r)r�)r$)r�r�y��r�y��)r�rxr�rr�r�r�)rr�r�r�r
)rr�test_dont_merge_constants�s$




z'TestSpecifics.test_dont_merge_constantscCstdtd�d�dS)NZ42Ztest_compile_pathliker)rr)rr
r
r�test_path_like_objects�sz$TestSpecifics.test_path_like_objectsN)2r/r0r1rrrrrrrr!r"r#r>rCrDrErGrPrkrrrnrorwr�r�r�r�r�r�r�r�r�r�r�r�rZcpython_onlyr�r�r�r�r�r�r�r�r�r�r�r�r
r
r
rrsX		/!
/	H

#




'(rc@sPeZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�ZdS)�
TestStackSize�dcCs>t|t�rt|dd�}tjtjt|j���}|j|j	|�dS)Nz<foo>r)
r�r�r�mathZceil�log�len�co_codeZassertLessEqual�co_stacksize)rrBZmax_sizer
r
r�check_stack_size�s
zTestStackSize.check_stack_sizecCs|jd|jd�dS)Nzx and r�)r��N)rr
r
r�test_and�szTestStackSize.test_andcCs|jd|jd�dS)Nzx or r�)r�r�)rr
r
r�test_or�szTestStackSize.test_orcCs|jd|jd�dS)Nzx and x or r�)r�r�)rr
r
r�test_and_or�szTestStackSize.test_and_orcCs|jd|jd�dS)Nzx < r�)r�r�)rr
r
r�test_chained_comparison�sz%TestStackSize.test_chained_comparisoncCs|jd|jd�dS)Nzx if x else r�)r�r�)rr
r
r�test_if_else�szTestStackSize.test_if_elsecCs|jd|jd�dS)Nzx + r�)r�r�)rr
r
r�
test_binop�szTestStackSize.test_binopcCs d}|d|j7}|j|�dS)Nz
def f(x):
z   x and x
)r�r�)rrBr
r
r�
test_func_and�szTestStackSize.test_func_andN)r/r0r1r�r�rrrrrrrr
r
r
rr��sr��__main__)r�r�r�Zunittestrnr�r�r�ZtestrZtest.supportrrZTestCaserr�r/�mainr
r
r
r�<module>s$0&

Youez - 2016 - github.com/yon3zu
LinuXploit