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/unittest/test/testmock/__pycache__/testwith.cpython-310.opt-2.pyc
o

�i�/�@s�ddlZddlmZddlmZddlmZmZmZm	Z	m
Z
mZe	jZ
e	jZGdd�de�ZGdd�dej�ZGd	d
�d
ej�ZedkrJe��dSdS)�N)�catch_warnings)�is_instance)�	MagicMock�Mock�patch�sentinel�	mock_open�callc@seZdZdS)�SampleExceptionN)�__name__�
__module__�__qualname__�rr�</usr/local/lib/python3.10/unittest/test/testmock/testwith.pyr

sr
c@sleZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�ZdS)�WithTestcCsRtdttj��|�ttjd�Wd�n1swY|�ttj�dS�N�%s.something�	unpatched)rrr�
Something2�assertEqual�	something�	Something��selfrrr�test_with_statements�zWithTest.test_with_statementc	Cst|�t��$tdttj��|�ttjd�t��1swYWd�n1s,wY|�ttj�dSr)	�assertRaisesr
rrrrrrrrrrr�test_with_statement_exceptions��z&WithTest.test_with_statement_exceptioncCs^tdt��}|�t|d�|�t|t�d�Wd�n1s!wY|�ttj�dS)Nrrzpatching wrong type)	rrrr�
assertTruerrrr�r�mock_somethingrrr�test_with_statement_as s��zWithTest.test_with_statement_ascCsdGdd�dt�}|j}t�|d��|�|j|d�Wd�n1s$wY|�|j|�dS)Nc@seZdZdZdS)z6WithTest.test_patch_object_with_statement.<locals>.Foo�fooN)rrr
rrrrr�Foo)sr"rr)�objectrrZassertNotEqualr)rr"Zoriginalrrr� test_patch_object_with_statement(s�z)WithTest.test_patch_object_with_statementc
Cs�tdd��Btdt��,}tdt��}|�t|d�|�t|d�Wd�n1s,wYWd�n1s;wYWd�n1sJwY|�ttj�|�ttj�dS)NT)�recordr�%s.something_elser)	rrrrr�something_elserr�
SomethingElse�rrZmock_something_elserrr�test_with_statement_nested1s�����z#WithTest.test_with_statement_nestedcCs`tdttj��}|�t|d�|�|tjd�Wd�n1s"wY|�ttj�dS)Nrrzwrong patch�rrrZPatchedrrrrrrr�test_with_statement_specified<s
�z&WithTest.test_with_statement_specifiedcCspt�}t�|_t�|_d|j_|�}|�||jj�Wd�n1s$wY|j��|j�ddd�dS)NF)r�	__enter__�__exit__�return_valuer�assert_called_with)r�mock�mrrr�testContextManagerMockingCs�
z"WithTest.testContextManagerMockingc	Csxt�}|�t��|�ddWd�n1swYWd�n1s)wY|j��|�|jj�dS)Nr!�)rr�	TypeErrorr-r0rr.Zcalled)rr1rrr�$test_context_manager_with_magic_mockOs
���
z-WithTest.test_context_manager_with_magic_mockc	Cs�tdttj��3}|�t|d�tdt��}|�t|d�Wd�n1s(wY|�t|d�Wd�n1s>wY|�ttjd�dS)Nrrzrestored with wrong instanceznot restoredr+)rrZ
mock_againrrr�"test_with_statement_same_attributeYs���	z+WithTest.test_with_statement_same_attributec	Cs�tdt��,}|�t|d�tdt��}|�t|d�Wd�n1s&wYWd�n1s5wY|�ttj�|�ttj�dS)Nrrr&)rrrrr'rrr(r)rrr�test_with_statement_imbricatedfs����z'WithTest.test_with_statement_imbricatedc	Cs�i}t�|ddi��|�|ddi�Wd�n1swY|�|i�|�t��%t�|ddi��
|�|ddi�td��1sFwYWd�n1sUwY|�|i�dS)N�a�bZKonrad)r�dictrr�	NameError)rr!rrr�test_dict_context_managerrs���z"WithTest.test_dict_context_managerc	Cs�Gdd�d�}|�}tj|ddd��6}tj|ddd��}|��Wd�n1s*wY|�|jd�|�|jd�|��Wd�n1sKwY|�|jd�dS)Nc@seZdZdd�ZdS)z5WithTest.test_double_patch_instance_method.<locals>.CcSsdS)Nrrrrr�f�sz7WithTest.test_double_patch_instance_method.<locals>.C.fN)rrr
r>rrrr�C�sr?r>T)Zautospec�r)rr#r>rZ
call_count)rr?�cZpatch1Zpatch2rrr�!test_double_patch_instance_methods
�
�z*WithTest.test_double_patch_instance_methodN)rrr
rrr r$r*r,r3r6r7r8r=rBrrrrrs	


rc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�ZdS) �TestMockOpencCsZt�}tdt|dd��}|�||�td�Wd�n1s!wY|�d�dS�N�%s.openT�Zcreater!)rrr�assertIs�open�assert_called_once_with�rr1Zpatchedrrr�test_mock_open�s
�zTestMockOpen.test_mock_openc	Cs�t�}|j}tdt|dd�� td��}|��Wd�n1s#wYWd�n1s2wYtd�t���t���t��ddd�g}|�	|j
|�|�||�dSrD)rr/rrrH�readr	r-r.r�
mock_callsrG)rr1�handler>�expected_callsrrr�test_mock_open_context_manager�s

����z+TestMockOpen.test_mock_open_context_managercCs�t�}tdt|dd��8td��}|��Wd�n1s wYtd��}|��Wd�n1s8wYWd�n1sGwYtd�t���t���t��ddd�td�t���t���t��ddd�g}|�|j	|�dS)NrETrFr!�bar)
rrrrHrLr	r-r.rrM)rr1r>rOrrr�-test_mock_open_context_manager_multiple_times�s 

�

����z:TestMockOpen.test_mock_open_context_manager_multiple_timescCsbt�}t|�tdt|dd��}|�||�td�Wd�n1s%wY|�d�dSrD)rrrrrGrHrIrJrrr�test_explicit_mock�s
�zTestMockOpen.test_explicit_mockcCs\tdd�}tdt|dd��td�}|��}Wd�n1s!wY|�|d�dS)Nr!�Z	read_datarETrFrQ�rrrrHrLr�rr1�h�resultrrr�test_read_data�s

�zTestMockOpen.test_read_datacCs�tdd�}tdt|dd��td�}|��}|��}|��}Wd�n1s)wY|�|d�|�|d�|�|d	�|�|��d
�tdd�}tdt|dd��td�}|��}Wd�n1siwY|�|d�|�|��d
�dS)N�foo
bar
baz
rTrETrFrQ�foo
�bar
�baz
�r!�rrrrH�readliner)rr1rW�line1�line2�line3rXrrr�test_readline_data�s$

�

�zTestMockOpen.test_readline_datacCs�tdd�}tdt|dd��td�}dd�|D�}Wd�n1s$wY|�|d	d
�|�|dd�|�|d
d�|�|��d�|�t��
t|�Wd�dS1s^wYdS)NrZrTrETrFrQcS�g|]}|�qSrr��.0�lrrr�
<listcomp>��z6TestMockOpen.test_dunder_iter_data.<locals>.<listcomp>rr[r@r\�r]r^)	rrrrHrr`r�
StopIteration�next)rr1rW�linesrrr�test_dunder_iter_data�s
�
"�z"TestMockOpen.test_dunder_iter_datacCs�tdd�}tdt|dd��td�}t|�}t|�}dd�|D�}Wd�n1s,wY|�|d	�|�|d
�|�|dd�|�|��d
�dS)NrZrTrETrFrQcSrerrrfrrrri�rjz/TestMockOpen.test_next_data.<locals>.<listcomp>r[r\rr]r^)rrrrHrmrr`)rr1rWrarbrnrrr�test_next_data�s
�zTestMockOpen.test_next_datacCs�tdd�}tdt|dd��td�}|��}Wd�n1s!wY|�|gd��tdd�}tdt|dd��td�}|��}Wd�n1sOwY|�|gd	��dS)
NrZrTrETrFrQ)r[r\r]�foo
bar
baz)r[r\Zbaz�rrrrH�	readlinesrrVrrr�test_readlines_data�s

�

�z TestMockOpen.test_readlines_datac	Cs~tdd�}tdt|dd��!tdd��}|��}Wd�n1s#wYWd�n1s2wY|�|d�dS)N��rTrETrF�abc�rbrU)rr1r>rXrrr�test_read_bytess

���zTestMockOpen.test_read_bytesc	Cs�tdd�}tdt|dd��)tdd��}|��}|��}|��}Wd�n1s+wYWd�n1s:wY|�|d�|�|d	�|�|d
�dS)N�abc
def
ghi
rTrETrFrvrw�abc
�def
�ghi
r_)rr2r>rarbrcrrr�test_readline_bytess

���z TestMockOpen.test_readline_bytesc	Cs�tdd�}tdt|dd��!tdd��}|��}Wd�n1s#wYWd�n1s2wY|�|gd��dS)	NryrTrETrFrvrw)rzr{r|rr)rr2r>rXrrr�test_readlines_bytes s

���z!TestMockOpen.test_readlines_bytescCs�d}t|d�}|�|��d�|dd��|�|��d�|dd��|�}|�|�d�|dd��|�|�d�|dd��dS)NrqrT�
)rrrL)rZ	some_datar1r>rrr�!test_mock_open_read_with_argument(s
z.TestMockOpen.test_mock_open_read_with_argumentcCs�tdd�}tdt|dd��td�}|��}|��}Wd�n1s%wY|�|d�|�|dd	g�tdd�}tdt|dd��td�}|��}|��}Wd�n1s]wY|�|d�|�|d
�dS)NrZrTrETrFrQr[r\r]zbar
baz
)rrrrHr`rsrrL)rr1rWra�restrrr�test_interleaved_reads5s 

�

�z#TestMockOpen.test_interleaved_readscCs�tdd�}|�}d|j_d|j_dg|j_|�|��d�|�|��d�|�|��dg�|�|��d�|�|��d�dS)Nr!rTrQ)rrLr/r`rsr)rr1rNrrr�test_overriding_return_valuesIs

z*TestMockOpen.test_overriding_return_valuesN)rrr
rKrPrRrSrYrdrorprtrxr}r~r�r�r�rrrrrC�s 		

rC�__main__)Zunittest�warningsrZunittest.test.testmock.supportrZ
unittest.mockrrrrrr	rrr(r'�	Exceptionr
ZTestCaserrCr�mainrrrr�<module>s ~M�