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.10/tkinter/test/test_tkinter/__pycache__/test_variables.cpython-310.pyc
o

�i1*�@s�ddlZddlmZddlZddlZddlmZmZmZmZm	Z	m
Z
mZddlm
Z
ddlmZGdd�de�ZGdd	�d	ej�ZGd
d�de�ZGdd
�d
e�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�deej�Zedkr}e��dSdS)�N)�support)�Variable�	StringVar�IntVar�	DoubleVar�
BooleanVar�Tcl�TclError)�	ALWAYS_EQ)�AbstractDefaultRootTestcs$eZdZdZdZ�fdd�Z�ZS)�Var�defaultFcsd|_t��|�dS)NT)�side_effect�super�set)�self�value��	__class__��E/usr/local/lib/python3.10/tkinter/test/test_tkinter/test_variables.pyrszVar.set)�__name__�
__module__�__qualname__Z_defaultrr�
__classcell__rrrrrsrc@seZdZdd�Zdd�ZdS)�TestBasecCst�|_dS�N)r�root�rrrr�setUpszTestBase.setUpcCs|`dSr)rrrrr�tearDownszTestBase.tearDownN)rrrrr rrrrrsrc@sdeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dS)�TestVariablecGs|j�|jjddg|�R��S)N�info�exists)rZ
getboolean�call)r�argsrrr�info_exists!szTestVariable.info_existscCs.t|j�}|�d|���|�t|�d�dS)N�z
^PY_VAR(\d+)$)rr�assertEqual�getZassertRegex�str�r�vrrr�test_default$s
zTestVariable.test_defaultcCs2t|jdd�}|�d|���|�dt|��dS)N�
sample string�varname)rrr(r)r*r+rrr�test_name_and_value)sz TestVariable.test_name_and_valuecCsL|�|�d��t|jdd�}|�|�d��~t��|�|�d��dS)Nr/r.)�assertFalser&rr�
assertTruer�
gc_collectr+rrr�test___del__.szTestVariable.test___del__cCsd|�|�d��t|jdd�}t|jdd�}~t��|�|�d��~t��|�|�d��dS)Nr/�name�r5)r1r&rrrr3)r�v1�v2rrr�test_dont_unset_not_existing6sz)TestVariable.test_dont_unset_not_existingcCs�t|jdd�}t|jdd�}|�||�|�||�t|jdd�}|�||�t|jdd�}|�t|�t|��|�||�tddi�}|�||��|�|t��|�|t	�t
��}|�|j
�t|dd�}|�t|�t|��|�||�dS)N�abcr6Zcbarr)rrZassertIsNotr(ZassertNotEqualrr*�type�objectr
�tkinter�TkZ
addCleanup�destroy)rr7r8Zv3Zv4�V�root2Zv5rrr�
test_equalityBs$zTestVariable.test_equalitycCs>|�t��t|jdd�Wd�dS1swYdS)N�{r6)�assertRaises�	TypeErrorrrrrrr�test_invalid_name\s"�zTestVariable.test_invalid_namecCs|�t��t|jdd�Wd�n1swY|�t��|j�dd�Wd�n1s3wY|�t��|j�dd�Wd�n1sOwY|�t��|j�dd�Wd�n1skwY|�t��|j�dd�Wd�dS1s�wYdS)Nzvarnamer6rsvarname)rD�
ValueErrorrr�globalsetvarZsetvarrrrr�test_null_in_name`s����"�zTestVariable.test_null_in_namecCs0t|j�}|�|j�|�d�|�|j�dS�Nr)rrr1rrr2r+rrr�test_initializels

zTestVariable.test_initializecst|j�}t|�}g��fdd�}�fdd�}|�d|�}|�d|�}|�t|���d|fd|fg�|��g�|�d�|��d|d	d
fg�g�|��|��d|d	dfg�g�t|���}|�	d
|�|�t|���|�|�
t��|�	dd�Wd�n1s�wY|�t|���|�|�	d|df�|�t|���|�|��|��d|d	dfg�g�|�	d|�|�|��d|fg�|��|��g�g�~t�
�|�d
�|��d|d	d
fg�g�~t�
�|��d|d	dfg�dS)Nc���d|�dS�N��read��append�r%�Ztracerr�read_tracerw�z0TestVariable.test_trace_old.<locals>.read_tracercrL�N)�writerPrRrSrr�write_traceryrUz1TestVariable.test_trace_old.<locals>.write_tracer�rZwu�spamrWr'�wrO�+�eggs�u)rrr*Ztrace_variabler(�sortedZtrace_vinforr)Z
trace_vdeleterDr	�gc�collect)rr,�vnamerTrXZcb1Zcb2r"rrSr�test_trace_oldrsP
 
�
zTestVariable.test_trace_oldcs�t|j�}t|�}g��fdd�}�fdd�}|�d|�}|�ddg|�}|�t|���d|fd	|fg�|��g�|�d
�|��d|ddfg�g�|��|��d|ddfg�g�t|���}|�	d|�|�t|���|�|�
t��|�	dd
�Wd�n1s�wY|�t|���|�|��|��d|ddfg�g�|�	d|�|�|��d	|fg�|��|��g�g�~t�
�|�d�|��d|ddfg�g�~t�
�|��d|ddfg�dS)
NcrLrMrPrRrSrrrT�rUz,TestVariable.test_trace.<locals>.read_tracercrLrVrPrRrSrrrX�rUz-TestVariable.test_trace.<locals>.write_tracerrOrW�unsetrN)rWrdrZr'r])rrr*Z	trace_addr(r_Z
trace_inforr)Ztrace_removerDr	r`ra)rr,rbrTrXZtr1Ztr2r"rrSr�
test_trace�sR
�
�
zTestVariable.test_traceN)rrrr&r-r0r4r9rBrFrIrKrcrerrrrr!s2r!c@�$eZdZdd�Zdd�Zdd�ZdS)�
TestStringVarcC�t|j�}|�d|���dS)Nr')rrr(r)r+rrrr-��
zTestStringVar.test_defaultcC�@t|jdd�}|�d|���|j�dd�|�d|���dS)Nr:r5r�rrr(r)rHr+rrr�test_get��zTestStringVar.test_getcCrj)Nzabcdefr5zvaluerkr+rrr�
test_get_null�rmzTestStringVar.test_get_nullN)rrrr-rlrnrrrrrg�srgc@rf)�
TestIntVarcCrh)Nr)rrr(r)r+rrrr-�rizTestIntVar.test_defaultcC�^t|jdd�}|�d|���|j�dd�|�d|���|j�dd�|�d|���dS)NrCr5Z345iYz876.5il)rrr(r)rHr+rrrrl��zTestIntVar.test_getcC�Xt|jdd�}|j�dd�|�ttf��
|��Wd�dS1s%wYdS�Nr5r6r)rrrHrDrGr	r)r+rrr�test_invalid_value��

"�zTestIntVar.test_invalid_valueN)rrrr-rlrtrrrrro�sroc@�,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�
TestDoubleVarcCrh)Ng)rrr(r)r+rrrr-rizTestDoubleVar.test_defaultcCs@t|jdd�}|�d|���|j�dd�|�d|���dS)N�G�z��?r5�3.45皙����@�rrZassertAlmostEqualr)rHr+rrrrlrmzTestDoubleVar.test_getcCrp)Nrxr5ryrzZ456i�r{r+rrr�test_get_from_int
rqzTestDoubleVar.test_get_from_intcCrrrs)rrrHrDrGr	r)r+rrrrtruz TestDoubleVar.test_invalid_valueN)rrrr-rlr|rtrrrrrw�s
rwc@rv)
�TestBooleanVarcCst|j�}|�|��d�dS)NF)rr�assertIsr)r+rrrr-rizTestBooleanVar.test_defaultcCs�t|jdd�}|�|��d�|j�dd�|�|��d�|j�d|j��r)dnd�|�|��d�|j�dd�|�|��d�|j�dd�|�|��d�dS)	NTr5�0F�*�r�on)rrr~r)rH�wantobjectsr+rrrrlszTestBooleanVar.test_getcCs�|j��rdnd}|j��rdnd}t|jdd�}|�d�|�|j�d�|�|�d�|�|j�d�|�|�d�|�|j�d�|�|�d�|�|j�d�|�|�d	�|�|j�d�|�dS)
Nr��1rrr5r6Tr�r�)rr�rrr(�globalgetvar)r�true�falser,rrr�test_set+s




zTestBooleanVar.test_setcCs�|j��rdnd}t|jdd�}|�t��
|�d�Wd�n1s%wY|�|j�d�|�|j�dd�|�t	��|�
�Wd�n1sOwY|j�dd�|�t	��
|�
�Wd�dS1spwYdS)Nrrr5r6rz1.0)rr�rrDr	rr(r�rHrGr))rr�r,rrr�test_invalid_value_domain:s�
�
"�z(TestBooleanVar.test_invalid_value_domainN)rrrr-rlr�r�rrrrr}s
r}c@seZdZdd�ZdS)�DefaultRootTestcCsT|�tt�t��}t�}|�d�|�|��d�|��t�	�|�tt�dSrJ)
rD�RuntimeErrorrr=r>rr(r)r?Z
NoDefaultRoot)rrr,rrr�
test_variableJs
zDefaultRootTest.test_variableN)rrrr�rrrrr�Hsr��__main__)Zunittest�testrr`r=rrrrrrr	Ztest.supportr
Ztkinter.test.supportrrZTestCaserr!rgrorwr}r�r�mainrrrr�<module>s&$
	8/
�