403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.217.141
Web Server : Microsoft-IIS/10.0
System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64
User : IUSR ( 0)
PHP Version : 8.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/Python313/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python313/Lib/test/__pycache__/test_finalization.cpython-313.pyc
�

��i�<��h�SrSSKrSSKrSSKrSSKrSSKJr SSKJr SSK	J
r
 "SS	5r"S
S\5r\"SS
\55r
\"SS\55r"SS\5r"SS\5r"SS5r"SS\\R$5r"SS5r"SS\\5r"SS\\5r"SS\\5r"S S!\\R$5r"S"S#5r"S$S%\\5r"S&S'\\5r"S(S)\\5r"S*S+\\R$5r"S,S-\5r\"S.S/\55r\"S0S1\55r \"S2S3\\55r!\
RD"S4S5\\R$55r#\$S6:Xa\RJ"5 gg!\a SrGN�f=f!\a SrGN�f=f)7zB
Tests for object finalization semantics, as outlined in PEP 442.
�N)�with_tp_delc�$�"SS[5nU$)Nc��\rSrSrSrSrg)�with_tp_del.<locals>.C�c�.�[R"S5e)Nzrequires _testcapi.with_tp_del��unittest�SkipTest��cls�args�kwargss   �+C:\Python313\\Lib\test\test_finalization.py�__new__�with_tp_del.<locals>.C.__new__s���'�'�(H�I�I��N��__name__�
__module__�__qualname__�__firstlineno__r�__static_attributes__rrr�Crs��
Jrr)�object�r
rs  rrr
s��	J��	J��r)�
without_gcc��"SS5nU$)Nc��\rSrSrSrSrg)�without_gc.<locals>.C�c�.�[R"S5e)Nzrequires _testcapi.without_gcr	rs   rr�without_gc.<locals>.C.__new__s���'�'�(G�H�HrrNrrrrrr!s��
Irrrrs  rrrs��	I�	I��r)�supportc��\rSrSrSr/r/r/r/rSr	Sr
\S5r\\
RS55rSrSrS	rSrg
)�NonGCSimpleBase�zX
The base class for all the objects under test, equipped with various
testing features.
Frc�:�URR5 URR5 [RR5 [R
"5 URR5 URR5 g�N)�	survivors�clear�errors�gc�garbage�collect�	del_calls�tp_del_calls�r
s r�_cleanup�NonGCSimpleBase._cleanup.s]���
�
�����
�
����
�
�
����
�
�
���
�
��������� rc#�# �[R"5 URR5 URR5 S[
lSv� UR(aURSeS[
lUR5 SSS5 g!S[
lUR5 f=f!,(df   g=f7f)z9
A context manager to use around all finalization tests.
FNrT)	r%�
disable_gcr1r,r2r'�	_cleaningr-r4r3s r�test�NonGCSimpleBase.test7s�����
�
�
!��M�M���!����"�"�$�(-�O�%�
���:�:��*�*�Q�-�'��-1��)�����"�
!��-1��)������"�
!�s5�C�AC�$B#�>C�	C�#C�C�
C�
Cc��g)z(
Check the object is sane (non-broken).
Nr��selfs r�check_sanity�NonGCSimpleBase.check_sanityI��rc��UR(dEURR[U55 UR	5 UR5 gg![a%nURRU5 SnAgSnAff=f)zq
PEP 442 finalizer.  Record that this was called, check the
object is in a sane state, and invoke a side effect.
N)r8r1�append�idr>�side_effect�	Exceptionr-�r=�es  r�__del__�NonGCSimpleBase.__del__Nsh��
	"��>�>����%�%�b��h�/��!�!�#�� � �"�"���	"��K�K���q�!�!��	"���AA�
B�#B�Bc��g)z&
A side effect called on destruction.
Nrr<s rrD�NonGCSimpleBase.side_effect[r@rN)rrrr�__doc__r+r1r2r-r8�	__slots__�classmethodr4�
contextlib�contextmanagerr9r>rHrDrrrrr'r'sj���
�I��I��L�
�F��I��I��!��!��������� �
"�rr'c� �\rSrSrSrSrSrg)�
SimpleBase�ac�$�[U5Ulgr*)rC�id_r<s r�__init__�SimpleBase.__init__cs
���d�8��rc�:�UR[U5:Xdegr*)rVrCr<s rr>�SimpleBase.check_sanityfs���x�x�2�d�8�#�#�#r)rVN)rrrrrWr>rrrrrSrSas���$rrSc��\rSrSrSrSrg)�NonGC�jrN)rrrrrNrrrrr\r\js���Irr\c��\rSrSrSrSrSrg)�NonGCResurrector�nrc�:�URRU5 g�z6
Resurrect self by storing self in a class-wide list.
N�r+rBr<s rrD�NonGCResurrector.side_effectr���	
�����d�#rN)rrrrrNrDrrrrr_r_ns���I�$rr_c��\rSrSrSrg)�Simple�xrN�rrrrrrrrrgrgx���rrgc��\rSrSrSrSrg)�SimpleResurrector�|c�:�URRU5 grbrcr<s rrD�SimpleResurrector.side_effect~rerrN�rrrrrDrrrrrlrl|s��$rrlc�>�\rSrSrSrSrSrSrSrSr	Sr
S	rg
)�TestBase�c�Z�[RSSUl/[RSS&gr*)r.r/�old_garbager<s r�setUp�TestBase.setUp�s���:�:�a�=�����
�
�1�
rc��UR[R/5 U?[R"5 g!U?[R"5 f=fr*)�assertEqualr.r/rur0r<s r�tearDown�TestBase.tearDown�s=��	����R�Z�Z��,�� ��J�J�L��� ��J�J�L�s	� :�Ac�h�UR[[R5[U55 gr*)ry�sortedrSr1�r=�idss  r�assert_del_calls�TestBase.assert_del_calls�s!������
� 4� 4�5�v�c�{�Crc�h�UR[[R5[U55 gr*)ryr}rSr2r~s  r�assert_tp_del_calls�TestBase.assert_tp_del_calls�s!������
� 7� 7�8�&��+�Frc�v�UR[S[R55[U55 g)Nc3�8# �UHn[U5v� M g7fr*�rC��.0�xs  r�	<genexpr>�,TestBase.assert_survivors.<locals>.<genexpr>�s���D�/C�!��1���/C���)ryr}rSr+r~s  r�assert_survivors�TestBase.assert_survivors�s'������D�z�/C�/C�D�D�f�S�k�Rrc�v�UR[S[R55[U55 g)Nc3�8# �UHn[U5v� M g7fr*r�r�s  rr��*TestBase.assert_garbage.<locals>.<genexpr>�s���:�z�!��1���z�r�)ryr}r.r/r~s  r�assert_garbage�TestBase.assert_garbage�s%������:�r�z�z�:�:�F�3�K�Hrc�@�[RR5 gr*)rSr+r,r<s r�clear_survivors�TestBase.clear_survivors�s�����"�"�$r)ruN)rrrrrvrzr�r�r�r�r�rrrrrrrr�s)����D�G�S�I�%rrrc�l�\rSrSrSrSrSr\RS5r	\RS5r
Srg)	�SimpleFinalizationTest�z&
Test finalization without refcycles.
c���[R5 [5n[U5/n[R
"U5nA[R"5 URU5 UR/5 URU"5S5 [R"5 URU5 UR/5 SSS5 g!,(df   g=fr*)rSr9rgrC�weakref�refr.r0r�r��assertIs�r=�sr�wrs    r�test_simple�"SimpleFinalizationTest.test_simple�s���
�_�_�
���A��a�5�'�C����Q��B���J�J�L��!�!�#�&��!�!�"�%��M�M�"�$��%��J�J�L��!�!�#�&��!�!�"�%��
�
���B3C�
Cc��[R5 [5n[U5/n[R
"U5nA[R"5 URU5 URU5 URU"5S5 UR5 [R"5 URU5 UR/5 SSS5 URW"5S5 g!,(df   N&=fr*)
rSr9rlrCr�r�r.r0r�r��assertIsNotr�r�r�s    r�test_simple_resurrect�,SimpleFinalizationTest.test_simple_resurrect�s���
�_�_�
�!�#�A��a�5�'�C����Q��B���J�J�L��!�!�#�&��!�!�#�&����R�T�4�(�� � �"��J�J�L��!�!�#�&��!�!�"�%��	
�
�
�b�d�D�!��
�s�CC8�8
Dc��[R5 [5nUR[R
"U55 [
U5/nA[R"5 URU5 UR/5 [R"5 URU5 UR/5 SSS5 g!,(df   g=fr*)
rSr9r\�assertFalser.�
is_trackedrCr0r�r��r=r�rs   r�test_non_gc�"SimpleFinalizationTest.test_non_gc�s���
�_�_�
���A����R�]�]�1�-�.��a�5�'�C���J�J�L��!�!�#�&��!�!�"�%��J�J�L��!�!�#�&��!�!�"�%��
�
�s�B+C	�	
Cc���[R5 [5nUR[R
"U55 [
U5/nA[R"5 URU5 URU5 UR5 [R"5 URUS-5 URU5 SSS5 g!,(df   g=f�N�)rSr9r_r�r.r�rCr0r�r�r�r�s   r�test_non_gc_resurrect�,SimpleFinalizationTest.test_non_gc_resurrect�s���
�_�_�
� �"�A����R�]�]�1�-�.��a�5�'�C���J�J�L��!�!�#�&��!�!�#�&�� � �"��J�J�L��!�!�#��'�*��!�!�#�&��
�
�s�B>C�
C*rN)rrrrrMr�r�r%�cpython_onlyr�r�rrrrr�r��sE���&�"� 
���&��&�
���'��'rr�c�4^�\rSrSrU4SjrU4SjrSrU=r$)�
SelfCycleBase��c�.>�[TU]5 Xlgr*)�superrWr��r=�	__class__s �rrW�SelfCycleBase.__init__�s���
�����rc�D>�[TU]5 URULdegr*)r�r>r�r�s �rr>�SelfCycleBase.check_sanity�s ���
�����x�x�4���r�r�)rrrrrWr>r�
__classcell__�r�s@rr�r��s���� � rr�c��\rSrSrSrg)�SimpleSelfCycle��rNrirrrr�r��rjrr�c��\rSrSrSrg)�SelfCycleResurrector��rNrirrrr�r��rjrr�c��\rSrSrSrSrg)�SuicidalSelfCycle��c��SUlg)�'
Explicitly break the reference cycle.
Nr�r<s rrD�SuicidalSelfCycle.side_effect�s����rr�Nrprrrr�r��s��rr�c�*�\rSrSrSrSrSrSrSrg)�SelfCycleFinalizationTest�zL
Test finalization of an object having a single cyclic reference to
itself.
c���[R5 [5n[U5/n[R
"U5nA[R"5 URU5 UR/5 URU"5S5 [R"5 URU5 UR/5 SSS5 g!,(df   g=fr*)rSr9r�rCr�r�r.r0r�r�r�r�s    rr��%SelfCycleFinalizationTest.test_simples���
�_�_�
��!�A��a�5�'�C����Q��B���J�J�L��!�!�#�&��!�!�"�%��M�M�"�$��%��J�J�L��!�!�#�&��!�!�"�%��
�
�r�c��[R5 [5n[U5/n[R
"U5nA[R"5 URU5 URU5 URU"5S5 UR5 [R"5 URU5 UR/5 URU"5S5 SSS5 g!,(df   g=fr*)rSr9r�rCr�r�r.r0r�r�r�r�r�s    rr��/SelfCycleFinalizationTest.test_simple_resurrects���
�_�_�
�$�&�A��a�5�'�C����Q��B���J�J�L��!�!�#�&��!�!�#�&��M�M�"�$��%�
� � �"��J�J�L��!�!�#�&��!�!�"�%��M�M�"�$��%�!�
�
�s�CC8�8
Dc���[R5 [5n[U5/n[R
"U5nA[R"5 URU5 UR/5 URU"5S5 [R"5 URU5 UR/5 URU"5S5 SSS5 g!,(df   g=fr*)rSr9r�rCr�r�r.r0r�r�r�r�s    r�test_simple_suicide�-SelfCycleFinalizationTest.test_simple_suicide%s����_�_�
�!�#�A��a�5�'�C����Q��B���J�J�L��!�!�#�&��!�!�"�%��M�M�"�$��%��J�J�L��!�!�#�&��!�!�"�%��M�M�"�$��%��
�
�s�C
C(�(
C6rN)	rrrrrMr�r�r�rrrrr�r��s���
&�&�(&rr�c�.^�\rSrSrSrU4SjrSrU=r$)�ChainedBasei7c�*�SUlXlXlg)NF��suicided�left�right)r=r�s  r�chain�ChainedBase.chain9s����
��	��
rc�z>�[TU]5 UR(aURbeURbegURnUR(aURbeOURULdeURnUR(aURbegURULdegr*)r�r>r�r�r�)r=r�r�r�s   �rr>�ChainedBase.check_sanity>s����
�����=�=��9�9�$�$�$��:�:�%�%�%��9�9�D��}�}��z�z�)�)�)��z�z�T�)�)�)��J�J�E��~�~��z�z�)�)�)��z�z�T�)�)�)r)r�r�)rrrrr�r>rr�r�s@rr�r�7s����
*�*rr�c��\rSrSrSrg)�
SimpleChainediOrNrirrrr�r�Orjrr�c��\rSrSrSrg)�ChainedResurrectoriRrNrirrrr�r�Rrjrr�c��\rSrSrSrSrg)�SuicidalChainediUc�.�SUlSUlSUlg)r�TNr�r<s rrD�SuicidalChained.side_effectWs����
���	���
r)r�r�r�Nrprrrr�r�Us��rr�c�Z�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrg)�CycleChainFinalizationTesti`z�
Test finalization of a cyclic chain.  These tests are similar in
spirit to the self-cycle tests above, but the collectable object
graph isn't trivial anymore.
c��UVs/sH	o""5PM nn[[U55HnX4RX4S-
5 M U$s snf)N�)�range�lenr�)r=�classesr
�nodes�is     r�build_chain�&CycleChainFinalizationTest.build_chaingsI��")�*�'�3���'��*��s�5�z�"�A��H�N�N�5�1��:�&�#����+s�Ac�J�[U5n[R5 URU5nUVs/sHn[	U5PM nnUVs/sHn[
R"U5PM nnA[R"5 URU5 UR/5 URUVs/sH	ow"5PM snS/U-5 [R"5 URU5 SSS5 gs snfs snfs snf!,(df   g=fr*)r�rSr9r�rCr�r�r.r0r�r�ry)r=r��Nr�r�r�wrsr�s        r�check_non_resurrecting_chain�7CycleChainFinalizationTest.check_non_resurrecting_chainms�����L��
�_�_�
��$�$�W�-�E�"'�(�%�Q�2�a�5�%�C�(�+0�1�5�a�7�;�;�q�>�5�C�1���J�J�L��!�!�#�&��!�!�"�%����S�1�S�r�b�d�S�1�D�6�A�:�>��J�J�L��!�!�#�&��
��(��1��
2��
�s5�D�D�D� D
�1A	D�:D
�
2D�D�
D"c��[U5n[R5 URU5n[U5nUVs/sHn[	U5PM nnUVs/sH%n[U[5(dM[	U5PM' nnUVs/sHn[R"U5PM nnA[R"5 URU5 URU5 URUVs/sH	o�"5PM snS/U-5 UR5 [R"5 URU5 UR/5 SSS5 gs snfs snfs snfs snf!,(df   g=fr*)r�rSr9r�rC�
isinstancerlr�r�r.r0r�r�ryr�)	r=r�r�r�r�r�survivor_idsr�r�s	         r�check_resurrecting_chain�3CycleChainFinalizationTest.check_resurrecting_chain{s'����L��
�_�_�
��$�$�W�-�E��E�
�A�"'�(�%�Q�2�a�5�%�C�(�+0�U�5�a�J�q�BS�4T�E�B�q�E�5�L�U�+0�1�5�a�7�;�;�q�>�5�C�1���J�J�L��!�!�#�&��!�!�,�/����S�1�S�r�b�d�S�1�D�6�A�:�>�� � �"��J�J�L��!�!�#�&��!�!�"�%��
��)��U��1��2��
�sI�!E7�E#�E7�E(�9E(�E7� E-�.A	E7�7E2
�AE7�#E7�7
Fc�6�UR[/S-5 g�N�)r�r�r<s r�test_homogenous�*CycleChainFinalizationTest.test_homogenous�s���)�)�=�/�A�*=�>rc�6�UR[/S-5 gr)r�r�r<s r�test_homogenous_resurrect�4CycleChainFinalizationTest.test_homogenous_resurrect�s���%�%�'9�&:�Q�&>�?rc�6�UR[/S-5 gr)r�r�r<s r�test_homogenous_suicidal�3CycleChainFinalizationTest.test_homogenous_suicidal�s���)�)�?�*;�a�*?�@rc�@�UR[[/S-5 gr��r�r�r�r<s r�test_heterogenous_suicidal_one�9CycleChainFinalizationTest.test_heterogenous_suicidal_one�s���)�)�?�M�*J�Q�*N�Orc�L�UR[/S-[/S--5 gr�rr<s r�test_heterogenous_suicidal_two�9CycleChainFinalizationTest.test_heterogenous_suicidal_two�s'���)�)�
���!�]�O�a�$7�7�	9rc�@�UR[[/S-5 gr�)r�r�r�r<s r�test_heterogenous_resurrect_one�:CycleChainFinalizationTest.test_heterogenous_resurrect_one�s���%�%�'9�=�&I�A�&M�Nrc�J�UR[[[/S-5 gr��r�r�r�r�r<s r�test_heterogenous_resurrect_two�:CycleChainFinalizationTest.test_heterogenous_resurrect_two�s ���%�%�
���@�1�D�	Frc�b�UR[/S-[/S--[/S--5 gr�rr<s r�!test_heterogenous_resurrect_three�<CycleChainFinalizationTest.test_heterogenous_resurrect_three�s6���%�%�
� �1�$�
���':�:�o�=N�QR�=R�R�	TrrN)rrrrrMr�r�r�rrr	r
rrrrrrrrr�r�`sD����'�&�&?�@�A�P�9�O�F�Trr�c� �\rSrSrSrSrSrg)�
LegacyBasei�c��UR(d5URR[U55 UR	5 gg![
a%nURRU5 SnAgSnAff=fr*)r8r1rBrCr>rEr-rFs  rrH�LegacyBase.__del__�s^��	"��>�>����%�%�b��h�/��!�!�#�"���	"��K�K���q�!�!��	"�s�AA	�	
A8�A3�3A8c��UR(dEURR[U55 UR	5 UR5 gg![a%nURRU5 SnAgSnAff=f)z:
Legacy (pre-PEP 442) finalizer, mapped to a tp_del slot.
N)r8r2rBrCr>rDrEr-rFs  r�
__tp_del__�LegacyBase.__tp_del__�sj��	"��>�>��!�!�(�(��D��2��!�!�#�� � �"�"���	"��K�K���q�!�!��	"�rJrN)rrrrrHr!rrrrrr�s��"�
"rrc��\rSrSrSrg)�Legacyi�rNrirrrr$r$����rr$c��\rSrSrSrSrg)�LegacyResurrectori�c�:�URRU5 grbrcr<s rrD�LegacyResurrector.side_effect�rerrNrprrrr'r'�s��$rr'c��\rSrSrSrg)�LegacySelfCyclei�rNrirrrr+r+�r%rr+c�>^�\rSrSrSrU4SjrSrSrSrSr	U=r
$)�LegacyFinalizationTesti�z-
Test finalization of objects with a tp_del.
c�>�[RR5 [R"5 [TU]5 gr*)r.r/r,r0r�rzr�s �rrz�LegacyFinalizationTest.tearDown�s)���	�
�
����
�
�
��
���rc���[R5 [5n[U5/n[R
"U5nA[R"5 URU5 URU5 UR/5 URU"5S5 [R"5 URU5 URU5 SSS5 g!,(df   g=fr*)rSr9r$rCr�r�r.r0r�r�r�r�r�s    r�test_legacy�"LegacyFinalizationTest.test_legacy�s���
�_�_�
���A��a�5�'�C����Q��B���J�J�L��!�!�#�&��$�$�S�)��!�!�"�%��M�M�"�$��%��J�J�L��!�!�#�&��$�$�S�)��
�
�s�CC"�"
C0c�\�[R5 [5n[U5/n[R
"U5nA[R"5 URU5 URU5 URU5 URU"5S5 UR5 [R"5 URU5 URUS-5 URU5 SSS5 URW"5S5 g!,(df   N&=fr�)
rSr9r'rCr�r�r.r0r�r�r�r�r�r�s    r�test_legacy_resurrect�,LegacyFinalizationTest.test_legacy_resurrect�s���
�_�_�
�!�#�A��a�5�'�C����Q��B���J�J�L��!�!�#�&��$�$�S�)��!�!�#�&��M�M�"�$��%�� � �"��J�J�L��!�!�#�&��$�$�S�1�W�-��!�!�#�&�� 	
�
�
�b�d�D�!�!�
�s�C(D�
D+c��[R5 [5n[U5/n[R
"U5nA[R"5 UR/5 UR/5 UR/5 URU5 URU"5S5 S[RSlSSS5 UR/5 URW"5S5 g!,(df   N7=f)Nr)rSr9r+rCr�r�r.r0r�r�r�r�r�r/r�r�s    r�test_legacy_self_cycle�-LegacyFinalizationTest.test_legacy_self_cycles���
�_�_�
��!�A��a�5�'�C����Q��B���J�J�L��!�!�"�%��$�$�R�(��!�!�"�%�����$����R�T�4�(� $�B�J�J�q�M���	
���B���
�
�b�d�D�!��
�s�B6C<�<
D
r)rrrrrMrzr1r4r7rr�r�s@rr-r-�s!�����
*�"�&"�"rr-�__main__)&rMrPr.r
r��	_testcapir�ImportErrorrr9r%r'rSr\r_rgrlrr�TestCaser�r�r�r�r�r�r�r�r�r�r�rr$r'r+r�r-r�mainrrr�<module>r>s����	����%��$��?�?�D$��$���O�����$��$��$�	�Z�	�$�
�$�%�%�<>'�X�x�'8�'8�>'�B � �	�m�V�	�	�=�*;�	��
�v��7&��(�*;�*;�7&�t*�*�0	�K��	�	��&7�	��k�6��GT��8�+<�+<�GT�Z"��"�0
�	�Z�	�
�	�
�$�
�$�
�$�
�	�m�Z�	�
�	�	���>"�X�x�'8�'8�>"��>"�B�z���M�M�O���[���������s"�F�F$�	F!� F!�$	F1�0F1

Youez - 2016 - github.com/yon3zu
LinuXploit