Sindbad~EG File Manager
�
'Μg�X��^� ddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl
Z
ddlmZGd�d�ZGd�d�Z
Gd�de
�ZGd �d
e
�ZGd�d�ZGd
�d�ZGd�d�ZGd�dej&ee�ZGd�dej&ee�ZGd�dej&ee�ZGd�dej&ee�ZGd�dej&ee�ZGd�dej&ee�ZGd�dej&�Zedk(rej8�yy) �N)�
import_helperc��eZdZy)�MyObjectN��__name__�
__module__�__qualname__���1/usr/local/lib/python3.12/test/test_memoryview.pyrrs��rrc���eZdZdZed��Zed��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�Zy)�AbstractMemoryTests�abcdefc��|jS�N)�source_bytes��selfs r�_sourcezAbstractMemoryTests._sources��� � � rc�F�td|j|jg�Sr)�filter�ro_type�rw_typers r�_typeszAbstractMemoryTests._types s���d�T�\�\�4�<�<�8�9�9rc�D��||j�}tj|�}|j|��|j �dtd��|j
�dt�|j �dtd��|j �dtd��|j �dtd��|jt�fd��|jt�fd��|jt�fd ��|jt�fd
��|jt�fd��|jt�fd��|jt�fd
��d�|j tj|�|�y)Nr�a��f���i����c����dS)N�r
��ms�r�<lambda>z=AbstractMemoryTests.check_getitem_with_type.<locals>.<lambda>.s ���a��drc����dS)N���r
r"s�rr$z=AbstractMemoryTests.check_getitem_with_type.<locals>.<lambda>/s ���a��erc�*���tjSr��sys�maxsizer"s�rr$z=AbstractMemoryTests.check_getitem_with_type.<locals>.<lambda>0s
���a����nrc�,���tjSrr(r"s�rr$z=AbstractMemoryTests.check_getitem_with_type.<locals>.<lambda>1s���a�����orc����dSrr
r"s�rr$z=AbstractMemoryTests.check_getitem_with_type.<locals>.<lambda>3s ���Q�t�Wrc����dS)N�r
r"s�rr$z=AbstractMemoryTests.check_getitem_with_type.<locals>.<lambda>4� ���Q�s�Vrc����dS)N�ar
r"s�rr$z=AbstractMemoryTests.check_getitem_with_type.<locals>.<lambda>5r/r)rr)�getrefcount�_view�assertEqual�ord�assertIsInstance�int�assertRaises�
IndexError� TypeError)r�tp�b�oldrefcountr#s @r�check_getitem_with_typez+AbstractMemoryTests.check_getitem_with_type$s0����t�|�|����o�o�a�(���J�J�q�M������1��s�4�y�)����a��d�C�(�����1��s�4�y�)�����2���D� �*�����2���D� �*����*�l�3����*�m�4����*�&<�=����*�&=�>����)�_�5����)�^�4����)�^�4����������+�[�9rc�H�|jD]}|j|��yr)rr>)rr;s r�test_getitemz AbstractMemoryTests.test_getitem9s���+�+�B��(�(��,�rc ���|jD]c}||j�}|j|�}|jt |�tt
|��D�cgc]}||�� c}��eycc}wr)rrr3r4�list�range�len�rr;r<r#�is r� test_iterzAbstractMemoryTests.test_iter=s`���+�+�B��4�<�<� �A��
�
�1�
�A����T�!�W�U�3�q�6�]�&C�]��q��t�]�&C�D���'Ds�A4c���|js|jd�|j|j�}tj|�}|j|���fd�}|j
t|d�|j
t|d�|j
t|td��d�|jtj|�|�y)N�no read-only type to testc���|�d<y)Nrr
)�valuer#s �r�setitemz:AbstractMemoryTests.test_setitem_readonly.<locals>.setitemIs����A�a�Drr�A)
r�skipTestrr)r2r3r8r:�
memoryviewr4)rr<r=rLr#s @r�test_setitem_readonlyz)AbstractMemoryTests.test_setitem_readonlyCs�����|�|��M�M�5�6��L�L����&���o�o�a�(���J�J�q�M�� ����)�W�d�3����)�W�b�1����)�W�j��.>�?����������+�[�9rc
����|js|jd�|j�|j|j�}tj|�}|j|��t
d��d<|j�|d��d��dd|j�|d��d��dd |j�|d
��d��dd|j�|d
��d��dd|j�|d��d
d�dd |j�|d��d��dd�dd �d
d|j�|d���fd�}|jt|dd�|jt|dd�|jt|tjd�|jt|tjd�|jt|dd�|jt|dd�|jt|tddd�dfd�|jt|dtddd�fd�|jt|dd�|jt|dd�tddd�tddd
�f}|jt||d��jdk(rtnt}|j||dd�|j||dd�|jt|tdd�d�|jt|tdd
�d�d�|j!tj|�|�y)N�no writable type to test�1rs1bcdef�0�s0bcdefs12�s012defrr�rscdedefsababcfc����|��|<yrr
)�keyrKr#r;s ��rrLz:AbstractMemoryTests.test_setitem_writable.<locals>.setitemjs�����Y�A�c�Frr!rr&r.)rr1�csab)rrNrr)r2r3r5�_check_contentsr8r9r*r:�slice�NotImplementedError�format�
ValueErrorr4)rr<r=rL�slices�excr#r;s @@r�test_setitem_writablez)AbstractMemoryTests.test_setitem_writableQs�����|�|��M�M�4�5�
�\�\���L�L����&���o�o�a�(���J�J�q�M���4�y��!�����R��I�.��D���!�A�����R��I�.��E���!�A�����R��I�.��C���!�A�����R��I�.��)�}��!�����R��I�.��1�Q���!�A�����R��I�.��)�}��!���1�Q���!�A�����R��I�.� �
���*�g�q�$�7����*�g�r�4�8����*�g�s�{�{�D�A����*�g����|�T�B����)�W�c�4�8����)�W�d�D�9����)�W�u�Q�q��|�Q�.?��F����)�W�q�%��!�A�,�.?��F����)�W�d�D�9����)�W�c�4�8���!�A�,��a��!��-�����-�w���E��H�H��O�j������#�w��3�/����#�w��5�1����*�g�u�Q�q�z�4�@����*�g�u�Q�q�z�4�@����������+�[�9rc�$�|jD]i}||j�}|j|�}|jt�5|d=ddd�|jt�5|dd�=ddd��ky#1swY�/xYw#1swY��xYw)NrU�)rrr3r8r:�rr;r<r#s r�test_delitemz AbstractMemoryTests.test_delitem�sv���+�+�B��4�<�<� �A��
�
�1�
�A��"�"�9�-��a�D�.��"�"�9�-��a��c�F�.�-��.�-��-�-�s�A:�)B�:B �B c����jD]u}�j|�j��}|j�}dj �fd�dD��}�j||��j
|t��wy)Nrc3�T�K�|]}�jt|g�����!y�wr)�getitem_type�bytes)�.0rZrs �r� <genexpr>z3AbstractMemoryTests.test_tobytes.<locals>.<genexpr>�s'����� B�7@�!��!�!�%���*�-�y�s�%(r)rr3r�tobytes�joinr4r6rj)rr;r#r<�expecteds` r�test_tobytesz AbstractMemoryTests.test_tobytes�sq����+�+�B��
�
�2�d�l�l�+�,�A�� � ��A��x�x� B�7@� B�B�H����Q��)��!�!�!�U�+�rc��|jD]N}|j||j��}|j�}|j |td���Py)Nr)rr3r�tolistr4rB)rr;r#�ls r�test_tolistzAbstractMemoryTests.test_tolist�sF���+�+�B��
�
�2�d�l�l�+�,�A����
�A����Q��Y��0�rc����|jD�]�}|j||j���|jD]�}|j�|d�k(�|j �|d�k7�|j �|d�k(�|j�|d�k7�|j �|d�k(�|j�|d�k7���|j��k(�|j��ddk(�|j�dd�ddk(�|j �dd�k(�|j �dk(�|j�dk7�|j d�k(�|jd�k7��dfD]j�|jt��fd��|jt��fd ��|jt��fd
��|jt��fd���l���y)Nrsabcdesabcde1rr!r�abcdefc�����kSrr
�rZr#s��rr$z2AbstractMemoryTests.test_compare.<locals>.<lambda>�� ���Q��Urc�����kSrr
rxs��rr$z2AbstractMemoryTests.test_compare.<locals>.<lambda>�� ���Q�!�Vrc�����k\Srr
rxs��rr$z2AbstractMemoryTests.test_compare.<locals>.<lambda>�r{rc�����kDSrr
rxs��rr$z2AbstractMemoryTests.test_compare.<locals>.<lambda>�ryr)rr3r�
assertTrue�assertFalser8r:)rr;�tp_comprZr#s @@r�test_comparez AbstractMemoryTests.test_compare�s�����+�+�B��
�
�2�d�l�l�+�,�A��;�;������W�Y�%7� 7�8�� � ��g�i�&8�!8�9�� � ��g�h�&7�!7�8�����W�X�%6� 6�7�� � ��g�i�&8�!8�9�����W�Y�%7� 7�8�
'�
�O�O�A��F�#��O�O�A��1��I�&��O�O�A�a��F�a��d�N�+����Q�q��V�q�[�)�
���Q�(�]�+��O�O�A��M�*����X��]�+��O�O�H��M�*���^���!�!�)�]�;��!�!�)�^�<��!�!�)�^�<��!�!�)�]�;� $�+rc��|j||j��}|j|j|j�|j|j|j�|j|j
d�|j|jd�|jt|�d�|j|j|jf�|j|jd�|S)NrU)r!r!r
)
r3rr4r^�itemsize�ndim�shaperD�strides�
suboffsets)rr;r#s r�check_attributes_with_typez.AbstractMemoryTests.check_attributes_with_type�s����J�J�r�$�,�,�'�(��������4�;�;�/�������T�]�]�3��������#�������$�'�����Q���#�������T�]�]�$4�5�������r�*��rc��|js|jd�|j|j�}|j|jd�y)NrIT)rrNr�r4�readonly�rr#s r�test_attributes_readonlyz,AbstractMemoryTests.test_attributes_readonly�s>���|�|��M�M�5�6��+�+�D�L�L�9��������T�*rc��|js|jd�|j|j�}|j|jd�y)NrRF)rrNr�r4r�r�s r�test_attributes_writablez,AbstractMemoryTests.test_attributes_writable�s>���|�|��M�M�4�5��+�+�D�L�L�9��������U�+rc��|jD]�}||j�}tj|�}|j |�}tj|�}t|d�}|j
|||jd��|jtj|�|�d}|jtj|�|���y)Nzutf-8) rrr)r2r3�strr[�encoder4)rr;r<r=r#�oldviewrefcount�ss r�test_getbufferz"AbstractMemoryTests.test_getbuffer�s����+�+�B��4�<�<� �A��/�/�!�,�K��
�
�1�
�A�!�o�o�a�0�O��A�w��A�� � ��Q�����(9�:����S�_�_�Q�/��A��A����S�_�_�Q�/��=�rc�`�|jD�]}t|t�s�Gd�d�}Gd�d|�}||d��}|j|�}t �}||_||_tj|�}dx}x}}tj�|j|�du|��||d��}t �}||_||_tj|�}dx}}tj�|j|�du|����!y)Nc��eZdZd�Zy)�+AbstractMemoryTests.test_gc.<locals>.MyViewc�$�t|�|_yr)rOr#)r�bases r�__init__z4AbstractMemoryTests.test_gc.<locals>.MyView.__init__�s��'��-�D�FrN)rrr r�r
rr�MyViewr��s��.rr�c��eZdZy)�-AbstractMemoryTests.test_gc.<locals>.MySourceNrr
rr�MySourcer��s��rr��abc)
r�
isinstance�typer3rr#�o�weakref�ref�gc�collectr~�x)rr;r�r�r<r#r��wrs r�test_gczAbstractMemoryTests.test_gc�s����+�+�B��b�$�'��
.�
.�
�2�
�
��F��$�A��
�
�1�
�A��
�A��A�C��A�C����Q��B���A���A��J�J�L��O�O�B�D�D�L�"�$�/��r�&�z�"�A��
�A��A�C��A�C����Q��B��L�A���J�J�L��O�O�B�D�D�L�"�$�/�Crc��|jtd�}|5t|�ddd�|5|j�ddd�|5|j �ddd�|5|dddd�|5d|d<ddd�|5t|�ddd�|5|jddd�|5|jddd�|5|jddd�|5|jddd�|5|jddd�|5|jddd�|5|5 ddd�ddd�|jdt|��|jdt|��|j||�|j!|t#||j$���|j!|||j$��y#1swY���xYw#1swY���xYw#1swY���xYw#1swY���xYw#1swY���xYw#1swY���xYw#1swY��xxYw#1swY��nxYw#1swY��dxYw#1swY��ZxYw#1swY��PxYw#1swY��FxYw#1swY��DxYw#1swY��IxYw)N�releasedr�xzreleased memory)�assertRaisesRegexr_rjrmrrrDr^r�r�r�r�r��assertInr��reprr4�assertNotEqualrOr)rr#r;�checks r�_check_releasedz#AbstractMemoryTests._check_releasedsx���&�&�z�:�>��
�E�!�H�U�
�A�I�I�K�U�
�A�H�H�J�U�
�A�a�D�U�
�4�A�a�D�U�
�C��F�U�
�A�H�H�U�
�A�J�J�U�
�A�F�F�U�
�A�J�J�U�
�A�G�G�U�
�A�I�I�U�
�����
�
�
�'��Q��0��
�
�'��a��1�����A�����A�z�"�T�\�\�*:�;�<����A�r�$�,�,�/�0�)�U��
�U��
�U��
�U��
�U��
�U��
�U��
�U��
�U��
�U��
�U��
�U������U�s��G�G�
G*�%G7�5H�H�
H�2
H+�
H8�
I�7
I�
I�%I9�(I,�*I9�G�G'�*G4�7H�H�H�H(�+H5�8I�I�I�I)�,I6 �1I9�9Jc�R�|jD]�}||j�}|j|�}|5}|j||�ddd�|j ||�|j|�}|5|j�ddd���y#1swY�JxYw#1swY��xYwr)rrr3�assertIsr��release)rr;r<r#�cms r�test_contextmanagerz'AbstractMemoryTests.test_contextmanagers����+�+�B��4�<�<� �A��
�
�1�
�A��b��
�
�b�!�$��� � ��B�'��
�
�1�
�A��� � ��������
��s�B�5B�B �B& c���|jD]i}||j�}|j|�}|j�|j ||�|j�|j ||��kyr)rrr3r�r�res r�test_releasez AbstractMemoryTests.test_release(s]���+�+�B��4�<�<� �A��
�
�1�
�A�
�I�I�K�� � ��B�'�
�I�I�K�� � ��B�'�rc���|j}|�|jd�||j�}|j|�}t j
d�}|j
t|j|�y)NrIsZZZZ) rrNrr3�io�BytesIOr8r:�readintorEs r�test_writable_readonlyz*AbstractMemoryTests.test_writable_readonly2s^���\�\��
�:��M�M�5�6��t�|�|����J�J�q�M���J�J�w������)�Q�Z�Z��3rc�F�|jt|ji�yr)r8r:r3rs r�test_getbuf_failz$AbstractMemoryTests.test_getbuf_fail=s�����)�T�Z�Z��4rc��|j}|�|jd�||j�}|j|�}|j t|�td��|j
�|j t|�td��|j|�}|j
�|jtt
|�y)NrIr) rrNrr3r4�hashr�r8r_res r� test_hashzAbstractMemoryTests.test_hash@s����\�\��
�:��M�M�5�6��t�|�|����J�J�q�M������a��$�y�/�2� � � ������a��$�y�/�2�
�J�J�q�M�� � � �����*�d�A�.rc��|j}|�|jd�||j�}|j|�}|j t
t|�y)NrR)rrNrr3r8r_r�res r�test_hash_writablez&AbstractMemoryTests.test_hash_writableRsJ��
�\�\��
�:��M�M�4�5��t�|�|����J�J�q�M�����*�d�A�.rc�p��|jD]�}||j�}|j|�}g�|f�fd� }tj||�}|j|�|�~tjj�|j|�d�|j�d|���y)Nc�(���j|�yr)�append)r�r<�Ls �r�callbackz2AbstractMemoryTests.test_weakref.<locals>.callbackas�������rr) rrr3r�r�r��test�support�
gc_collect)rr;r<r#r�r�r�s @r�test_weakrefz AbstractMemoryTests.test_weakref[s�����+�+�B��4�<�<� �A��
�
�1�
�A��A� �
����Q��)�B��M�M�"�$��"���L�L�#�#�%��M�M�"�$��%��M�M�!�A�$��"�rc
�^�|jD]�}||j�}|j|�}tt |j���}|j
tt |��|�|j
tt |��t|ddd�����y)Nr)rrr3rB�reversedrrr4)rr;r<r#�aslists r�
test_reversedz!AbstractMemoryTests.test_reversedjs~���+�+�B��4�<�<� �A��
�
�1�
�A��(�1�8�8�:�.�/�F����T�(�1�+�.��7����T�(�1�+�.��Q�t��t�W�
�>�rc��|jD]�}||j�}|j|�}|j�}|j |j
�|j t
|�j
�|j|j�|j��|j�|j���yr)
rrr3�
toreadonlyr~r�rOr4rrr�)rr;r<r#�mms r�test_toreadonlyz#AbstractMemoryTests.test_toreadonlyrs����+�+�B��4�<�<� �A��
�
�1�
�A�����B��O�O�B�K�K�(��O�O�J�r�N�3�3�4����R�Y�Y�[�!�(�(�*�5��J�J�L�
�H�H�J�rc�Z�tjdgd��}t|�}|jd�}|jd�}|dd}t|�}~|j|dd�|j|dd�|j|jd�|j|jd�|jd�}|j|dd�|j|dd�|j|jd�|j|jd�y)N�H)�r�r�r��BrrWr��I)�arrayrO�castr4r^)rr1r�r#r<rZ�d�_s r�test_issue22668z#AbstractMemoryTests.test_issue22668}s����K�K��1�2���q�M��
�F�F�3�K��
�F�F�3�K��
�a��F���q�M��
�����1��s�#�����1��s�#�������3�'�������3�'�
�F�F�3�K������1��s�#�����1��s�#�������3�'�������3�'rN) rrr r�propertyrrr>r@rGrPrbrfrprtr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r
rrrrs����L�
�!��!��:��:�:�*-�E�:�2:�h�,�1�<�< �+�,�>�"0�H1�0
�(� 4�5�/�$/�
#�?� �(rrc� �eZdZeZeZeZdZdZ y)�BaseBytesMemoryTestsrUr�N)
rrr rjr� bytearrayrrir�r^r
rrr�r��s���G��G��L��H�
�Frr�c��eZdZdZd�Zd�Zejd�jZdZe jd�d��Ze jd�d��Zy) �BaseArrayMemoryTestsNc�@�tjdt|��S�NrF)r�rB�rr<s rr$zBaseArrayMemoryTests.<lambda>�s��e�k�k�#�t�A�w�7rc�\�tjdt|��j�Sr�)r�rBrmr�s rr$zBaseArrayMemoryTests.<lambda>�s��5�;�;�s�D��G�#<�#D�#D�#FrrFz/XXX test should be adapted for non-byte buffersc��yrr
rs rr�z#BaseArrayMemoryTests.test_getbuffer����rz:XXX NotImplementedError: tolist() only supports byte viewsc��yrr
rs rrtz BaseArrayMemoryTests.test_tolist�r�r)
rrr rrrir�r�r^�unittest�skipr�rtr
rrr�r��sl���G�7�G�F�L��u�{�{�3��(�(�H�
�F��X�]�]�D�E�
�F�
��X�]�]�O�P�
�Q�
rr�c��eZdZd�Zd�Zy)�BaseMemoryviewTestsc��t|�Sr�rO)r�objs rr3zBaseMemoryviewTests._view�s���#��rc�4�|j|||��yr�r4�rr;r��contentss rr[z#BaseMemoryviewTests._check_contents�s������b��l�+rN)rrr r3r[r
rrr�r��s���,rr�c�"�eZdZdZd�Zd�Zd�Zy)�BaseMemorySliceTests�XabcdefYc�"�t|�}|ddS�NrU�r��rr�r#s rr3zBaseMemorySliceTests._view�s���s�O����1�v�
rc�:�|j|dd||��yr�r�r�s rr[z$BaseMemorySliceTests._check_contents��������Q�q��2�h�<�0rc���|jD]\}t||j��}tj|�}|dd|jtj|�|��^y)NrUrW)rrOrr)r2r4)rr;r#r=s r� test_refszBaseMemorySliceTests.test_refs�sS���+�+�B��2�d�l�l�+�,�A��/�/�!�,�K�
�a��F����S�_�_�Q�/��=� rN)rrr rr3r[rr
rrr�r��s���L��1�>rr�c��eZdZdZd�Zd�Zy)�BaseMemorySliceSliceTestsr�c�(�t|�}|ddddS)Nr�rUr�r�s rr3zBaseMemorySliceSliceTests._view�s���s�O����!�u�Q�R�y�rc�:�|j|dd||��yr�r�r�s rr[z)BaseMemorySliceSliceTests._check_contents�rrN)rrr rr3r[r
rrrr�s���L��1rrc��eZdZd�Zy)�BytesMemoryviewTestc��|jD]�}||j�}|jt|��|jt|���|j t
t�|j t
t||�|j t
t|��|j t
t|d����y)N)�object)�argumentT)rrr~rOr8r:)rr;�obs r�test_constructorz$BytesMemoryviewTest.test_constructor�s����+�+�B��D�L�L�!�B��O�O�J�r�N�+��O�O�J�b�1�2����i��4����i��R��<����i��b��A����i��R�$��G�rN)rrr rr
rrr r �s��Hrr c��eZdZd�Zy)�ArrayMemoryviewTestc���tjdtd��}t|�}tjdtddd��}||dd|j||�y)NrF�
� r)r�rCrOr4)rr1r#�new_as r�test_array_assignz%ArrayMemoryviewTest.test_array_assign�sQ���K�K��U�2�Y�'���q�M�����C��q�"�b�!1�2����!������E�"rN)rrr rr
rrrr�s��#rrc��eZdZy)�BytesMemorySliceTestNrr
rrrr����rrc��eZdZy)�ArrayMemorySliceTestNrr
rrrr�rrrc��eZdZy)�BytesMemorySliceSliceTestNrr
rrrr�rrrc��eZdZy)�ArrayMemorySliceSliceTestNrr
rrrr�rrrc�<�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
y )
� OtherTestc�t�tjd�}t|jd��}|j�}t |�jd�}|dd|dd|dd|dd|j
|jd�dD]�}|j|�5|j�}t |�j|�}t |�j|�dd|ddt |�j|�dd|dd|j
|jd�ddd���y#1swY��xYw)N�ctypesg333333�?r�rW�Bbc) r�
import_modulerj�c_doublerOr�r4rK�subTest)rr"�p6r�r#r^s r�test_ctypes_castzOtherTest.test_ctypes_casts���,�,�X�6��
�6�?�?�3�'�
(���O�O����q�M���s�#���2�A���"�1���1�2���!�"��������#�&��F����f�%��O�O�%���q�M�&�&�v�.��"�2��+�+�F�3�B�Q�7��"�1��"�2��+�+�F�3�A�B�7��!�"��� � ����#�.�&�%��%�%�s
�BD.�.D7 c�z�tjdddd�}tjdddd�}t|�jd�}t|�jd�}|j |j
dz|j
�|j
|j�|j��y) N�eeer.g��g�?�fff�e�frW)�struct�packrOr�r4�nbytes�assertListEqualrr)r� half_data�
float_data� half_view�
float_views r�test_half_floatzOtherTest.test_half_floats����K�K��s�D�#�6� ��[�[���T�3�7�
��y�)�.�.�s�3� ��
�+�0�0��5�
�����)�)�A�-�z�/@�/@�A����Y�-�-�/��1B�1B�1D�Erc�z�ddz}t|�}|ddd�}|j|j�ddz�y)NrTi@
r�30)rOr4�hex)rr��m1�m2s r�test_memoryview_hexzOtherTest.test_memoryview_hexs;���6�M��
��]��
��"��X���������4�&�=�1rc��td�}|jt�5tj|�ddd�y#1swYyxYw�Nr�)rOr8r:�copyr�s r� test_copyzOtherTest.test_copy$s1���v���
�
�
�y�
)��I�I�a�L�*�
)�
)�s�A�A c���td�}ttjdz�D]6}|j t
�5tj||�ddd��8y#1swY�CxYw)Nr�rU)rOrC�pickle�HIGHEST_PROTOCOLr8r:�dumps)rr#�protos r�test_picklezOtherTest.test_pickle)sQ���v����6�2�2�Q�6�7�E��"�"�9�-����Q��&�.�-�8�-�-�s�A"�"A+ c�������d����fd��G�fd�d�}G�fd�d�}G�fd�d�}d�ttd �z���|jt�5�|�ddd�d�ttd �z���|j t�d|��d
gdz�d�ttd �z���|j t�|�d�d
gdz�d�ttd �z��j
d
d��|jtd�5�|�dfddd�d�ttd �z��j
d
d��|jtd�5�d|�fddd�d�ttd �z���|jtd�5d�|�<ddd�|j �ddd�d�ttd �z���|jtd�5d�d|�ddd�|j �ddd�d�ttd �z���|jtd�5d�|�dddd�|j �ddd�d�ttd �z��j
d
d��|jtd�5d�|�df<ddd�|j �ddd�d�ttd �z��j
d
d��|jtd�5d�d|�f<ddd�|j �ddd�d�ttd �z���|jtd�5|��d<ddd�|j �ddd�dD]�}|j|��5d�ttd �z��j
|��|jtd�5|��d<ddd�|j �ddd�ddd���dD]�}|j|��5d�ttd �z��j
|��|jtd�5|��d<ddd�|j �ddd�ddd���d�ttd �z��j
d��|jtd�5|��d<ddd�|j �ddd�y#1swY���xYw#1swY��xYw#1swY���xYw#1swY���xYw#1swY��JxYw#1swY��xYw#1swY���xYw#1swY��HxYw#1swY���xYw#1swY���xYw#1swY��xYw#1swY��xYw#1swY���xYw#1swY��xYw)N�c�<���j�t���yr)r�r�)�bar#�sizes���rr�z3OtherTest.test_use_released_memory.<locals>.release4s���
�I�I�K��4��Brc���eZdZ�fd�Zy)�3OtherTest.test_use_released_memory.<locals>.MyIndexc�����y)Nrdr
�rr�s �r� __index__z=OtherTest.test_use_released_memory.<locals>.MyIndex.__index__9s���� �rN)rrr rP�r�s�r�MyIndexrM8s���
rrRc���eZdZ�fd�Zy)�3OtherTest.test_use_released_memory.<locals>.MyFloatc�����y)Ng@r
rOs �r� __float__z=OtherTest.test_use_released_memory.<locals>.MyFloat.__float__=����� �rN)rrr rVrQs�r�MyFloatrT<����
rrXc���eZdZ�fd�Zy)�2OtherTest.test_use_released_memory.<locals>.MyBoolc�����y)NTr
rOs �r�__bool__z;OtherTest.test_use_released_memory.<locals>.MyBool.__bool__ArWrN)rrr r]rQs�r�MyBoolr[@rYrr^���rd�r�)�@rWzoperation forbiddenr)rWrb�*ssspam��bhilqnBHILQN)�fmt�fd�?) rOr�r8r_r4rBr�r�r&) rrRrXr^rfrJr#r�rKs @@@@r�test_use_released_memoryz"OtherTest.test_use_released_memory/sV����� !� � � � � � �
���y����.�/��
�
�
�z�
*�
�g�i�L�+����y����.�/������a�
���m�,�s�e�a�i�8�
���y����.�/������a�� �!�n�-��u�q�y�9�
���y����.�/�4�4�S�'�B��
�
#�
#�J�0E�
F�
�g�i��l�O�G����y����.�/�4�4�S�'�B��
�
#�
#�J�0E�
F�
�a���l�O�G����y����.�/��
�
#�
#�J�0E�
F��A�g�i�L�G�����B�Q���)�
���y����.�/��
�
#�
#�J�0E�
F�#�A�j�w�y�M�G�����B�Q���)�
���y����.�/��
�
#�
#�J�0E�
F�$�A�g�i��N�G�����B�Q���)�
���y����.�/�4�4�S�'�B��
�
#�
#�J�0E�
F� �A�g�i��l�O�G�����A�b��7�+�
���y����.�/�4�4�S�'�B��
�
#�
#�J�0E�
F� �A�a���l�O�G�����B�Q���)�
���y����.�/��
�
#�
#�J�0E�
F��9�A�a�D�G�����B�Q���)�!�C����#��&����y����6�7�<�<�S�A���+�+�J�8M�N�"�9�A�a�D�O�� � ��B�Q���1�'�&�"��C����#��&����y����6�7�<�<�S�A���+�+�J�8M�N�"�9�A�a�D�O�� � ��B�Q���1�'�&�����y����.�/�4�4�S�9��
�
#�
#�J�0E�
F��8�A�a�D�G�����B�Q���)�Y+�
*��G�
F��
G�
F��
G�
F��G�
F��G�
F��G�
F��
G�
F��G�
F��O�N��'�&��O�N��'�&��G�
F�s�� U�2
U
�
U�
U'�!U4�8V�
V�
V�!V(� ?W�V5�*W�(?W�'W�2W�W)�U
�
U�U$�'U1�4U>�V�V�V%�(V2�5V?�:W�W �W�W�W& �)W2c���td�jd�}t�}||_||_tj|�}~~tj�|j|��y)Nr�r)
rO�
__buffer__rr#r�r�r�r�r��assertIsNone)rr#r�r�s r�test_buffer_reference_loopz$OtherTest.test_buffer_reference_loop�sW���v��)�)�!�,���J��������
�[�[��^��
�q�
�
�
�����"�$�rc���tjtd��}t�}||_||_t
j|�}~~tj�|j|��yr>)rB�PickleBufferrOr�pbr�r�r�r�r�rl)rrpr�r�s r� test_picklebuffer_reference_loopz*OtherTest.test_picklebuffer_reference_loop�sW��
�
�
��F�!3�
4���J��������
�[�[��^����
�
�
�����"�$�rN)rrr r(r6r<r@rFrirmrqr
rrr r s-��/�&F�2��
'�d*�L � rr �__main__)r��test.supportr�r)r�r�r�r�r?rBr.rrrr�r�r�r�r�TestCaser rrrrrr r�mainr
rr�<module>rvs=�����
� ��� ��
�
�&� � �w(�w(�|�.��
�.�
�(,�,�>�>�"1�1�H�(�+�+��-�H� #�(�+�+��-� #� �8�,�,��.� � �8�,�,��.� � �� 1� 1��3� � �� 1� 1��3� �
f ��!�!�f �R�z���H�M�M�O�r
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists