Sindbad~EG File Manager
�
'Μg7A���ddlZddlmZddlZddlZddlmZddlm Z m
Z
ddlZddlZddl
mZGd�d�ZGd�d �ZGd
�de�ZGd�d
e�ZGd�dej&�Zedk(rej,�yy)�N)�WeakSet)�
UserString)�Set�
MutableSet)�supportc��eZdZy)�FooN��__name__�
__module__�__qualname__���./usr/local/lib/python3.12/test/test_weakset.pyr r ���rr c��eZdZd�Zy)�RefCyclec��||_y�N)�cycle��selfs r�__init__zRefCycle.__init__s ����
rN)rrr
rrrrrrs��rrc��eZdZy)�WeakSetSubclassNr
rrrrrrrrc��eZdZdZy)�WeakSetWithSlots)�x�yN)rrr
� __slots__rrrrrs���Irrc�&�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d �Z"d!�Z#d"�Z$d#�Z%d$�Z&d%�Z'd&�Z(d'�Z)d(�Z*d)�Z+d*�Z,d+�Z-d,�Z.d-�Z/d.�Z0d/�Z1y0)1�TestWeakSetc�2�dD�cgc]
}t|���c}|_dD�cgc]
}t|���c}|_dD�cgc]
}t|���c}|_dD�cgc]
}t|���c}|_dD�cgc]
}t|���c}|_t
|j�|_t
|j�|_t
|j
�|_ tjD�cgc]
}t|���c}|_t
|j�|_
tj|j�|_td�|_t
|j"g�|_ycc}wcc}wcc}wcc}wcc}wcc}w)N��a�b�c)rr�z�ab�abcde�def�F)�ustr�items�items2�ab_items�abcde_items� def_itemsr�
ab_weakset�
abcde_weakset�def_weakset�string�
ascii_letters�letters�s�dict�fromkeys�d�obj�fs�rr's r�setUpzTestWeakSet.setUps2��'6�7��!�d�1�g��7��
�(7�8��1�t�A�w��8���*.�/�$�Q��a��$�/��
�-4�5�W��D��G�W�5���+0�1�5�a�$�q�'�5�1���!�$�-�-�0���$�T�%5�%5�6���"�4�>�>�2���)/�)=�)=�>�)=�A��Q��)=�>�������$������t�z�z�*�����9����4�8�8�*�%����8��8��/��5��1��?s"�E;�F�F�F
�=F�7Fc��tt�}tt�D]/}|dk(s|jd�r�|j ||d|z��1y)N�
test_c_api�_zWeakSet missing method )�dirr�set�
startswith�assertIn)r�weaksetmethods�methods r�test_methodszTestWeakSet.test_methods,sI���W����#�h�F���%��):�):�3�)?���M�M�&�.�2�V�;�
=�rc�<�|jttgd�y)N�)�assertRaises� TypeErrorrrs r�test_new_or_initzTestWeakSet.test_new_or_init4s�����)�W�b�!�4rc�4�|jt|j�t|j��|jt|j�d�|`t
j�|jt|j�d�y)N�r)�assertEqual�lenr9r<r>r=r�
gc_collectrs r�test_lenzTestWeakSet.test_len7sc������T�V�V��c�$�&�&�k�2�����T�W�W��q�)��H���������T�W�W��q�)rc�t�|jD],}|j||jv||jv��.|j d|j�|j|j|j�|`tj�|j td�|j�y)NrQr,)r8rRr9r<�assertNotInrGr=r>rrTr-r?s r�
test_containszTestWeakSet.test_contains>s������A����Q�$�&�&�[�!�t�v�v�+�6��
����D�F�F�#��
�
�d�h�h����(��H���������c��D�G�G�,rc�D�|jj|j�}|jD]2}|j ||v||j
vxs||jv��4|j |jt
|j��|j t|�t�|jt|jjgg�tttjtt fD]b}t
|j|jz�}||j�}|j |jj|�|�~�d|j t#|�t#|j�t#|j�z�|jj%�t'j(�|j t#|�t#|j�t#|j�z�yr)r9�unionr/r8rRr<rr.�typerMrNrE� frozensetr:r;�list�tuplerS�pop�gc�collect)r�ur'�Crs r�
test_unionzTestWeakSet.test_unionHsf���F�F�L�L����%�����A����Q�!�V�Q�$�&�&�[�%D�A����4D�E������������!4�5�����a��'�*����)�T�V�V�\�\�B�4�8��i�����e�;�A���
�
�T�[�[�0�1�A��$�+�+��A����T�V�V�\�\�!�_�a�0�� <�
����Q���T�Z�Z��3�t�{�{�3C�!C�D�������
�
�
������Q���T�Z�Z��3�t�{�{�3C�!C�Drc��|jj|j�}|j|jt |j�z|�|j|jt|j�z|�yr)r9rZr/rRrEr\�r�is r�test_orzTestWeakSet.test_orYs\���F�F�L�L����%��������#�d�k�k�"2�2�A�6�������)�D�K�K�"8�8�!�<rc�N�t|j�}|j|j�}|jD]2}|j ||v||jvxr||jv��4|j |t|j��|j t|�t�tttjttfD]>}tg�}|j |j||j��|��@|j t|�t|j��|jj�tj �|j t|�t|j��yr)rr8�intersectionr/rRr[rEr\r:r;r]r^r.rSr_r`ra)rr9rgr'rcrs r�test_intersectionzTestWeakSet.test_intersection^s���D�L�L�!��
�N�N�4�;�;�'�����A����Q�!�V�Q�$�+�+�%5�%K�!�t�|�|�:K�L������G�D�L�L�1�2�����a��'�*��i�����e�;�A����A����Q�^�^�A�d�j�j�M�:�A�>�<�
����Q���T�[�[�!1�2�������
�
�
������Q���T�[�[�!1�2rc��|j|jjt|j���|j|jjt|j
���yr)�
assertTruer9�
isdisjointrr/r8rs r�test_isdisjointzTestWeakSet.test_isdisjointmsM��������)�)�'�$�+�+�*>�?�@����D�F�F�-�-�g�d�l�l�.C�D�D�Erc��|jj|j�}|j|jt |j�z|�|j|jt|j�z|�yr)r9rjr/rRrEr\rfs r�test_andzTestWeakSet.test_andqs^���F�F������,��������#�d�k�k�"2�2�A�6�������)�D�K�K�"8�8�!�<rc���|jj|j�}|jD]2}|j ||v||j
vxr||jv��4|j |jt
|j��|j t|�t�|jt|jjgg�yr)r9�
differencer/r8rRr<rr.r[rMrN�rrgr's r�test_differencezTestWeakSet.test_differencevs����F�F���d�k�k�*�����A����Q�!�V�Q�$�&�&�[�%I�Q�d�k�k�5I�J������������!4�5�����a��'�*����)�T�V�V�%6�%6���=rc��|jj|j�}|j|jt |j�z
|�|j|jt|j�z
|�yr)r9rsr/rRrEr\rfs r�test_subzTestWeakSet.test_sub~s^���F�F���d�k�k�*��������#�d�k�k�"2�2�A�6�������)�D�K�K�"8�8�!�<rc�.�|jj|j�}|jD]1}|j ||v||j
v||jvz��3|j |jt
|j��|j t|�t�|jt|jjgg�|j t|�t|j�t|j�z�|jj�tj�|j t|�t|j�t|j�z�yr)r9�symmetric_differencer/r8rRr<rr.r[rMrNrSr_r`rarts r�test_symmetric_differencez%TestWeakSet.test_symmetric_difference�s���F�F�'�'����4�����A����Q�!�V�a�4�6�6�k�a�4�;�;�6F�%G�H������������!4�5�����a��'�*����)�T�V�V�%@�%@�2�$�G�����Q���T�Z�Z��3�t�{�{�3C�!C�D�������
�
�
������Q���T�Z�Z��3�t�{�{�3C�!C�Drc��|jj|j�}|j|jt |j�z|�|j|jt|j�z|�yr)r9ryr/rRrEr\rfs r�test_xorzTestWeakSet.test_xor�s^���F�F�'�'����4��������#�d�k�k�"2�2�A�6�������)�D�K�K�"8�8�!�<rc���|j|j|jk�|j|j|jk�|j|j|jk\�|j|j|jk�|j|j|jk\�|jtd�j
d��|jtd�jd��|jtd�j
d��|jtd�jd��y)Nr%�abc�cbs)rmr3r4�assertFalser5rE�issubset�
issupersetrs r�test_sub_and_superzTestWeakSet.test_sub_and_super�s��������4�+=�+=�=�>�����*�*�d�.@�.@�@�A�����*�*�d�o�o�=�>�����+�+�t�/?�/?�?�@�����+�+�t�/?�/?�?�@�����C��)�)�%�0�1�����E�
�-�-�c�2�3�����S��*�*�5�1�2�����U��.�.�s�3�4rc�<�|j|j|jk�|j|j|jk�|j|j|jk�|jt�t�k�yr)rmr3r4r�r5rrs r�test_ltzTestWeakSet.test_lt�sn��������$�*<�*<�<�=�����+�+�d�.>�.>�>�?�������4�?�?�:�;������W�Y�.�/rc�<�|j|j|jkD�|j|j|jkD�|j|j|jkD�|jt�t�kD�yr)rmr4r3r�r5rrs r�test_gtzTestWeakSet.test_gt�sn������*�*�T�_�_�<�=�����+�+�d�.>�.>�>�?�������4�?�?�:�;������W�Y�.�/rc��td�td�D��}|D]!}||_||_t|g�|_�#y)Nc3�0K�|]}t����y�wr)r )�.0rgs r� <genexpr>z&TestWeakSet.test_gc.<locals>.<genexpr>�s����/�;�a�C�E�;�s�i�)r�ranger�subrE)rr9�elems r�test_gczTestWeakSet.test_gc�s;���/�5��;�/�/���D��D�J��D�H���v��D�H�rc���Gd�dt�}|�}t�}|j|�|j||�|j |�|j|�|j|�y)Nc��eZdZd�Zy)�5TestWeakSet.test_subclass_with_custom_hash.<locals>.Hc�0�tt|�dz�S)Ni���)�int�idrs r�__hash__z>TestWeakSet.test_subclass_with_custom_hash.<locals>.H.__hash__�s���2�d�8�j�0�1�1rN)rrr
r�rrr�Hr��s��
2rr�)rrE�addrG�remove�discard)rr�r9�fs r�test_subclass_with_custom_hashz*TestWeakSet.test_subclass_with_custom_hash�sX�� 2�� 2��#��
�%�� ���a���
�
�a��� ����� ���a�� � � �!�rc��t�}|j|j�|j||j�|j|j
�|j|t|j
��|j
t|j|d�|j
t|jd�y)NrLrQ)rrr.rRr9r/rMrN)rr9s r� test_initzTestWeakSet.test_init�s����I�� �
�
�4�:�:������D�F�F�#� �
�
�4�;�;������G�D�K�K�0�1����)�Q�Z�Z��A�6����)�Q�Z�Z��3rc��t|j�}t|�}|jt|�t|��yr)rr.�assertNotEqualr�)rr9�ts r�test_constructor_identityz%TestWeakSet.test_constructor_identity�s1���D�J�J����A�J�����B�q�E�2�a�5�)rc�N�|jtt|j�yr)rMrN�hashr9rs r� test_hashzTestWeakSet.test_hash�s�����)�T�4�6�6�2rc���|jj�|j|jtg��|jt |j�d�y)Nr)r9�clearrRrrSrs r�
test_clearzTestWeakSet.test_clear�s?�����������������-�����T�V�V��a�(rc���|jj�}|j|j|�|jt |j�t |��yr)r9�copyrRr�r�)r�dups r� test_copyzTestWeakSet.test_copy�sA���f�f�k�k�m���������%����B�t�v�v�J��3��0rc���td�}|jj|�|j||j�|jj �}|jj|�|j|j|�|j
t|jjg�|jjt��tj�|jt|j�dk(�|jj|j�|jt|j�dk(�y)N�QrQ)r-r9r�rGr�rRrMrNr>r rrTrmrSr=)rrr�s r�test_addzTestWeakSet.test_add�s�����I�����
�
�1�
��
�
�a���� ��f�f�k�k�m�����
�
�1�
��������%����)�T�V�V�Z�Z��4������C�E����������D�G�G���)�*������D�H�H������D�G�G���)�*rc�4�td�}|jj|�|j||j�|j t
|jj|�|j t|jjg�y)Nr%)r-r9r�rWrM�KeyErrorrN)rrs r�test_removezTestWeakSet.test_remove�sc����I�����
�
�a������D�F�F�#����(�D�F�F�M�M�1�5����)�T�V�V�]�]�B�7rc�*�td�td�}}|jj|�|j||j�|jj|�|j t
|jjg�y)Nr%r�)r-r9r�rWrMrN)rr%�qs r�test_discardzTestWeakSet.test_discard�sa���C�y�$�s�)�1�������q������D�F�F�#������q�����)�T�V�V�^�^�R�8rc�
�tt|j��D]8}|jj�}|j ||j��:|jt|jj�yr)r�rSr9r_rWrMr�)rrgr�s r�test_popzTestWeakSet.test_pop�sV���s�4�6�6�{�#�A��6�6�:�:�<�D����T�4�6�6�*�$�
���(�D�F�F�J�J�/rc�>�|jj|j�}|j|d�|j|jzD]}|j||j�� |j
t|jjgg�yr)r9�updater/rRr.rGrMrN�r�retvalr's r�test_updatezTestWeakSet.test_update�sm�������t�{�{�+�������&��*�*�t�{�{�*�A��M�M�!�T�V�V�$�+����)�T�V�V�]�]�R�D�9rc���|jjt|j��|j|jzD]}|j||j�� yr)r9r�rEr/r.rGr?s r�test_update_setzTestWeakSet.test_update_setsD�����
�
�c�$�+�+�&�'��*�*�t�{�{�*�A��M�M�!�T�V�V�$�+rc���|xjt|j�zc_|j|jzD]}|j ||j�� yr)r9rEr/r.rGr?s r�test_iorzTestWeakSet.test_ior sB�����#�d�k�k�"�"���*�*�t�{�{�*�A��M�M�!�T�V�V�$�+rc��|jj|j�}|j|d�|j|jzD]W}||jvr+||jvr|j||j��<|j
||j��Y|jt|jjgg�yr) r9�intersection_updater/rRr.rGrWrMrNr�s r�test_intersection_updatez$TestWeakSet.test_intersection_updates������+�+�D�K�K�8�������&��*�*�t�{�{�*�A��D�K�K��A����O��
�
�a����(�� � ��D�F�F�+� +�
���)�T�V�V�%?�%?�"��Frc�:�|xjt|j�zc_|j|jzD]W}||jvr+||jvr|j ||j��<|j||j��Yyr�r9rEr/r.rGrWr?s r� test_iandzTestWeakSet.test_iandsl�����#�d�k�k�"�"���*�*�t�{�{�*�A��D�K�K��A����O��
�
�a����(�� � ��D�F�F�+� +rc��|jj|j�}|j|d�|j|jzD]W}||jvr+||jvr|j||j��<|j
||j��Y|jt|jjgg�|jt|jjgg�yr)
r9�difference_updater/rRr.rGrWrMrN�symmetric_difference_updater�s r�test_difference_updatez"TestWeakSet.test_difference_update s������)�)�$�+�+�6�������&��*�*�t�{�{�*�A��D�J�J��1�D�K�K�#7��
�
�a����(�� � ��D�F�F�+� +�
���)�T�V�V�%=�%=��t�D����)�T�V�V�%G�%G�"��Nrc�:�|xjt|j�zc_|j|jzD]W}||jvr+||jvr|j ||j��<|j||j��Yyrr�r?s r� test_isubzTestWeakSet.test_isub+sl�����#�d�k�k�"�"���*�*�t�{�{�*�A��D�J�J��1�D�K�K�#7��
�
�a����(�� � ��D�F�F�+� +rc��|jj|j�}|j|d�|j|jzD]X}||jv||jvzr|j||j��=|j
||j��Z|jt|jjgg�yr) r9r�r/rRr.rGrWrMrNr�s r� test_symmetric_difference_updatez,TestWeakSet.test_symmetric_difference_update3s������3�3�D�K�K�@�������&��*�*�t�{�{�*�A��T�Z�Z��A����$4�5��
�
�a����(�� � ��D�F�F�+� +�
���)�T�V�V�%G�%G�"��Nrc�<�|xjt|j�zc_|j|jzD]X}||jv||jvzr|j ||j��=|j||j��Zyrr�r?s r� test_ixorzTestWeakSet.test_ixor=so�����#�d�k�k�"�"���*�*�t�{�{�*�A��T�Z�Z��A����$4�5��
�
�a����(�� � ��D�F�F�+� +rc�l�|jj�}||z}|j||j�||z}|j||j�||z}|j|t��|jj�}||z}|j|t��yr)r9r�rRr)rr�s r�test_inplace_on_selfz TestWeakSet.test_inplace_on_selfEs����F�F�K�K�M�� �Q�������D�F�F�#� �Q�������D�F�F�#� �Q�������G�I�&��F�F�K�K�M�� �Q�������G�I�&rc�p�|j|j|jk(�|j|jt|j�k(�|j |jt|j�k(�|j |jt
|j�k(�|j |jt|j�k(�|j |jttg�k(�|j |jdk(�y)NrQ) rmr9rr.r�rEr]r^r rs r�test_eqzTestWeakSet.test_eqQs���������$�&�&�(�)�������'�$�*�*�"5�5�6�������3�t�z�z�?�2�3�������4��
�
�#3�3�4�������5����#4�4�5�������7�C�5�>�1�2�������1��%rc��|j|jt|j�k7�t �}t �}|j||k7�yr)rmr9rEr.rr�)r�s1�s2s r�test_nezTestWeakSet.test_ne[s?��������#�d�j�j�/�1�2�
�Y��
�Y������r��"rc�n�dD�cgc]
}t|���}}t|�}t|�}t|�|d=t j
�|j
tt|��t|�t|�dz
g�~|jt|�t|��ycc}w)Nr$���rQ)
r-r�iter�nextr`rarGrSr]rR)rr'r.r9�its r�!test_weak_destroy_while_iteratingz-TestWeakSet.test_weak_destroy_while_iteratingas���#2�2�/�Q��a��/��2��E�N��
�!�W���R���"�I�
�
�
���
�
�c�$�r�(�m�c�%�j�#�e�*�q�.�%A�B������Q���U��,��3s�B2c�r���tjD�cgc]
}t|���c}�t���tj
��fd��}|�5}|j
|��ddd�|�5}|jt�j|�ddd�|j
��|�5}�j|�ddd�|j|���j�}|�5}�j|�ddd�|jt��t|��|�5}�j!�ddd�|jt��d�ycc}w#1swY��xYw#1swY��xYw#1swY��xYw#1swY��xYw#1swY�[xYw)Nc3��K� t��}ttt|���}tt�j ���}||k(rt|�tj�|��d}y#d}wxYw�wr)r�r-�strr�r_r`ra)r��yieldedrbr.r9s ��r�testcontextzMTestWeakSet.test_weak_destroy_and_mutate_while_iterating.<locals>.testcontextusd�����
��!�W���s�4��8�}�-����U�Y�Y�[�)�*���a�<���H��
�
�������T��s�B�A2A:�7B�:A>�>Br)r6r7r-r�
contextlib�contextmanagerrWrMr�r�r�rGr�r�rRrSr�)rr'r�rbr�r.r9s @@r�,test_weak_destroy_and_mutate_while_iteratingz8TestWeakSet.test_weak_destroy_and_mutate_while_iteratingqsH���"(�"6�"6�7�"6�Q��a��"6�7���E�N�� � "� "� �
#� � �]�a����Q��"��
�]�a����h����!�4������A��
�]�a�
�E�E�!�H���
�
�a���
�F�F�H��
�]�a�
�H�H�Q�K������Q���Q��(�
�]�a�
�G�G�I������Q���#��C8�&�]��
�]���]���]���]�sA�E7�E<�7"F �:F�=F!�F-�<F� F�F�!F*�-F6c��d}t|�D�cgc]}t���}}t|�}~t|�} t |�t
j�t|�}~t
j�t
j�t|�}|j|d�|j|d�ycc}w#t
$rY��wxYw)N�)rrQr)r�rrr�r��
StopIterationr`rarSrGrR)r�Nrgr.r9r��n1�n2s r�test_len_cycleszTestWeakSet.test_len_cycles�s�����%*�1�X�.�X����X��.��E�N���
�!�W�� ���H� �
�
��
��V���
�
�
��
�
�
��
��V���
�
�b�&�!�����Q���!/��� �� �s�B>�C� C�Cc�T�|jtjgtj����t dd�D]�}d}tj
d�tj|||�t |�D�cgc]}t
���}}t|�}~t|�} t|�t|�}~t|�}|j|d�|j||�|j|d�|j||���ycc}w#t$rY�rwxYw)NrQ�dr�r)�
addCleanupr`�
set_threshold�
get_thresholdr�rarrr�r�r�rS�assertGreaterEqual�assertLessEqual) r�thr�rgr.r9r�r�r�s r�
test_len_racezTestWeakSet.test_len_race�s�������(�(�>�2�+;�+;�+=�>���3�-�B��A��J�J�q�M����R��R�(�).�q��2��A�X�Z��E�2����A���a��B�
��R���Q��B���Q��B��#�#�B��*�� � ��Q�'��#�#�B��*�� � ��R�(�' ��3��!�
��
�s�>D�)D� D'�&D'c��yrrrs r� test_reprzTestWeakSet.test_repr�s�rc��|j|jt�|j|jt�yr)�assertIsInstancer9rrrs r�test_abczTestWeakSet.test_abc�s*�����d�f�f�c�*����d�f�f�j�1rc���ttfD�]�}||j�}dg|_dg|_tj
|�}|j
||�|j||�|j||�|j|j|j�|j|j|j�|jt|d��tj|�}|j
||�|j||�|j||�|j|j|j�|j|j|j�|j|j|j�|j|j|j�|jt|d�����y)Nrr(r)
rrr.rr(r�r�rR�assertIsNot�assertIsr��hasattr�deepcopy)r�clsr9r�s r�test_copyingzTestWeakSet.test_copying�sb���,�,�C��D�J�J��A��%�A�C��%�A�C��)�)�A�,�C��!�!�#�s�+����S�!�$����S�!�$��M�M�#�%�%����%��M�M�#�%�%����%����W�S�#�.�/��-�-��"�C��!�!�#�s�+����S�!�$����S�!�$����S�U�U�A�C�C�(����S�U�U�A�C�C�(����S�U�U�A�C�C�(����S�U�U�A�C�C�(����W�S�#�.�/�+-rN)2rrr
r@rJrOrUrXrdrhrkrorqrurwrzr|r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrr"r"s���&� =�5�*�-�E�"=�
3�F�=�
>�=�
E�=�
5�0�0�'��5�*�
3�)�
1�
+�8�9�0�:�%�
%�
G�,� O�,�O�,�
'�&�#�-� #$�J �()�01�2�0rr"�__main__)�unittest�weakrefrr�r6�collectionsrr-�collections.abcrrr`r��testrr rrr�TestCaser"r�mainrrr�<module>rs{�����
�*�+� ��� � ��� �g� ��w��E0�(�#�#�E0�P�z���H�M�M�O�r
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists