Current File : //usr/local/apps/python3/lib/python3.11/test/__pycache__/test_shelve.cpython-311.pyc
�

�Ke��	��ddlZddlZddlZddlZddlZddlZddlmZddlm	Z	ddl
mZddlm
Z
d�ZGd�de��ZGd	�d
ej��ZGd�d��ZGd
�de��ZGd�de��ZddlmZeejdz��D]�ZeejfZde�d�Zeeeddeii��e��e<eejfZe
��D]SZej�d��sJ�ejdd�Z de�de �d�Zeeeedeid���e��e<�T��edkrej!��dSdS)�N)�support)�	os_helper)�MutableMapping)�dbm_iteratorc�,�|�d��S�N�latin-1)�decode)�ss �:/usr/local/apps/python3/lib/python3.11/test/test_shelve.py�L1r

s���8�8�I����c�F�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	e	Z
d�Zd	�Zd
S)�byteskeydictz Mapping that supports bytes keysc��i|_dS�N)�d��selfs r�__init__zbyteskeydict.__init__s
������rc�6�|jt|��Sr�rr
�r�keys  r�__getitem__zbyteskeydict.__getitem__s���v�b��g�g��rc�4�||jt|��<dSrr)rr�values   r�__setitem__zbyteskeydict.__setitem__s�����r�#�w�w���rc�0�|jt|��=dSrrrs  r�__delitem__zbyteskeydict.__delitem__s���F�2�c�7�7�O�O�Orc�*�t|j��Sr)�lenrrs r�__len__zbyteskeydict.__len__s���4�6�{�{�rc#�pK�|j���D]}|�d��V��dSr)r�keys�encode)r�ks  r�iterkeyszbyteskeydict.iterkeys"sD����������	&�	&�A��(�(�9�%�%�%�%�%�%�	&�	&rc�D�t|�����Sr)�listr(rs rr%zbyteskeydict.keys(s���D�M�M�O�O�$�$�$rc�*�t|j��Sr)rrrs r�copyzbyteskeydict.copy+s���D�F�#�#�#rN)
�__name__�
__module__�__qualname__�__doc__rrrr r#r(�__iter__r%r,�rrrrs�������&�&������� � � �������&�&�&��H�%�%�%�$�$�$�$�$rrc��eZdZejZej�ejd��Z	d�Z
dd�Zd�Zd�Z
d�Zd�Zd	�Zd
�Zd�Zd�Zd
�Zd�Zd�Zd�ZdS)�TestCase�shelftemp.dbc��i}tj|dd���}gd�|d<|�|dgd���|�t|��d��|���|�tt|��	|d|�d��dS#t$rYdSwxYw�N�F��protocol�	writeback��r8���key1r=z"Closed shelf should not find a key)�shelve�Shelf�assertEqualr"�close�assertRaises�
ValueError�fail�r�d1rs   r�
test_closezTestCase.test_close3s���
���L��a�5�9�9�9���I�I��&�	�����6��I�I�I�.�.�.�����Q����#�#�#�	���	�	�	����*�c�1�-�-�-�	<�
�f�I�I�
�I�I�:�;�;�;�;�;���	�	�	��D�D�	���s�B7�7
C�CNc�^�tj|j��|�tj|j��t
j|�|n|j|���}	d|d<|�	|dd��|�
��dS#|�
��wxYw)N)�filenamer:r<r@)�os�mkdir�dirname�
addCleanupr�rmtreerA�open�fnrCrD)rrLr:rs    r�test_open_templatezTestCase.test_open_templateBs���
����������	�(�$�,�7�7�7��K�X�-A���t�w�!)�
+�
+�
+��	�!�A�f�I����Q�v�Y�	�2�2�2�
�G�G�I�I�I�I�I��A�G�G�I�I�I�I���s�!B�B,c�2�|�d���dS)Nr�r:�rTrs r�test_ascii_file_shelfzTestCase.test_ascii_file_shelfM��������+�+�+�+�+rc�2�|�d���dS)Nr=rVrWrs r�test_binary_file_shelfzTestCase.test_binary_file_shelfPrYrc�2�|�d���dS)Nr8rVrWrs r�test_proto2_file_shelfzTestCase.test_proto2_file_shelfSrYrc�`�|�tj|j�����dS�N)rL)rTr�FakePathrSrs r�test_pathlib_path_file_shelfz%TestCase.test_pathlib_path_file_shelfVs,������);�D�G�)D�)D��E�E�E�E�Erc�`�|�tj|j�����dSr_)rTrM�fsencoderSrs r�test_bytes_path_file_shelfz#TestCase.test_bytes_path_file_shelfYs+�������T�W�)=�)=��>�>�>�>�>rc��|�tjtj|j�������dSr_)rTrr`rMrcrSrs r�"test_pathlib_bytes_path_file_shelfz+TestCase.test_pathlib_bytes_path_file_shelf\s6������);�B�K���<P�<P�)Q�)Q��R�R�R�R�Rrc�z�t��}tj|d���5}d|d<|�|dd��ddd��n#1swxYwYt��}tj|d���5}d|d<|�|dd��ddd��n#1swxYwY|�t	|��d��|�t	|��d��|�|���|�����dS)NrrVr<r@r=)rrArBrCr"�assertNotEqual�items�rrIr�d2s    r�test_in_memory_shelfzTestCase.test_in_memory_shelf_s���
�^�^��
�\�"�q�
)�
)�
)�	3�Q�!�A�f�I����Q�v�Y�	�2�2�2�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3����	3�	3�	3�	3��^�^��
�\�"�q�
)�
)�
)�	3�Q�!�A�f�I����Q�v�Y�	�2�2�2�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3����	3�	3�	3�	3�	
����R���!�$�$�$�����R���!�$�$�$����B�H�H�J�J����
�
�3�3�3�3�3s#�"A�A�A�"B0�0B4�7B4c��t��}tj|dd���5}gd�|d<|�|dgd���|d�d��|�|dgd���ddd��n#1swxYwYt��}tj|dd���5}gd�|d<|�|dgd���|d�d��|�|dgd���ddd��n#1swxYwY|�t|��d	��|�t|��d	��dS)
Nr8Fr9r<r@�T)r=r8r>r?rnr=)rrArBrC�appendr"rjs    r�test_mutable_entryzTestCase.test_mutable_entryms���
�^�^��
�\�"�q�E�
:�
:�
:�	3�a�!�	�	�A�f�I����Q�v�Y�	�	�	�2�2�2�
�f�I���Q�������Q�v�Y�	�	�	�2�2�2�		3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3����	3�	3�	3�	3��^�^��
�\�"�q�D�
9�
9�
9�	5�Q�!�	�	�A�f�I����Q�v�Y�	�	�	�2�2�2�
�f�I���Q�������Q�v�Y����4�4�4�		5�	5�	5�	5�	5�	5�	5�	5�	5�	5�	5����	5�	5�	5�	5�	
����R���!�$�$�$�����R���!�$�$�$�$�$s%�AB�B�B�AD,�,D0�3D0c��i}d}dgtj|��|<|�|�d��|��dgtj|d���|<|�|�d��|��tj|d���}|�t
|j|dg��dS)NuPöpr=�utf-8r	)�keyencoding�ascii)rArB�assertInr&rE�UnicodeEncodeErrorr)rrrrs    r�test_keyencodingzTestCase.test_keyencodings������� !�s���Q������
�
�c�j�j��)�)�1�-�-�-�78�c���Q�I�.�.�.�s�3��
�
�c�j�j��+�+�Q�/�/�/��L���0�0�0�����,�a�m�S�1�#�F�F�F�F�Frc�"�i}d}|�d��}tj|d���5}dg||<||}|d�d��ddd��n#1swxYwY||}|�||��dS)NrrrT)r;r=r8)r&rArBrorh)rrr�
encodedkeyr�p1�p2s       r�&test_writeback_also_writes_immediatelyz/TestCase.test_writeback_also_writes_immediately�s��������Z�Z��(�(�
�
�\�!�t�
,�
,�
,�	���S�A�c�F��:��B�
�e�H�O�O�A����	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��z�]�����B��#�#�#�#�#s�*A&�&A*�-A*c��i}tj|dd���5}gd�|d<|�|dgd���|�t|��d��ddd��n#1swxYwY|�t
t|��	|d|�d��dS#t
$rYdSwxYwr7)rArBrCr"rErFrGrHs   r�	test_withzTestCase.test_with�s��
��
�\�"�q�E�
:�
:�
:�	(�a�!�	�	�A�f�I����Q�v�Y�	�	�	�2�2�2����S��V�V�Q�'�'�'�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(����	(�	(�	(�	(�	
���*�c�1�-�-�-�	<�
�f�I�I�
�I�I�:�;�;�;�;�;���	�	�	��D�D�	���s$�A	A/�/A3�6A3�B;�;
C	�C	c��tji��5}|�|jtj��ddd��dS#1swxYwYdSr)rArBrC�	_protocol�pickle�DEFAULT_PROTOCOL)rrs  r�test_default_protocolzTestCase.test_default_protocol�s���
�\�"�
�
�	C�����Q�[�&�*A�B�B�B�	C�	C�	C�	C�	C�	C�	C�	C�	C�	C�	C�	C����	C�	C�	C�	C�	C�	Cs�&A�A�A)NN)r-r.r/r�TESTFNrOrM�path�joinrSrJrTrXr[r]rardrfrlrprwr|r~r�r2rrr4r4/s��������G�	����i�&��	7�	7�B�
<�
<�
<�	�	�	�	�,�,�,�,�,�,�,�,�,�F�F�F�?�?�?�S�S�S�4�4�4�%�%�%�$G�G�G�
$�
$�
$�<�<�<�C�C�C�C�Crr4c�"�eZdZejZd�ZdS)�TestShelveBasec��dddd�S)N�value1r8)r=r8r>)r@�key2�key3r2rs r�
_referencezTestShelveBase._reference�s����'�:�:�:rN)r-r.r/rArB�	type2testr�r2rrr�r��s*��������I�;�;�;�;�;rr�c��eZdZd�ZdS)�TestShelveInMemBasec�H�tjt��fi|j��Sr)rArBr�_argsrs r�_empty_mappingz"TestShelveInMemBase._empty_mapping�s ���|�L�N�N�9�9�d�j�9�9�9rN)r-r.r/r�r2rrr�r��s#������:�:�:�:�:rr�c��eZdZdZd�Zd�ZdS)�TestShelveFileBaserc��|xjdz
c_tj|jt	|j��zfi|j��}|�|j��|S)Nr=)�counterrArR�	base_path�strr�rPrD)r�xs  rr�z!TestShelveFileBase._empty_mapping�sU����������K����T�\�):�):�:�I�I�d�j�I�I������� � � ��rc�J�tj}tj|��|�tj|��tj�|d��|_|�ttdtj��|jt_dS)Nr5�_defaultmod)
rr�rMrNrPrQr�r�r��setattr�dbmr��dbm_mod)rrOs  r�setUpzTestShelveFileBase.setUp�so���"��
���������	�(�'�2�2�2�����g�~�>�>��������m�S�_�E�E�E��,����rN)r-r.r/r�r�r�r2rrr�r��s7�������G����'�'�'�'�'rr�)�
mapping_testsr=�	TestProto�	MemShelver�r:zdbm.r?�File_�Shelve)r�r��__main__)"�unittestr�rA�globr�rM�testr�test.supportr�collections.abcr�
test.test_dbmrr
rr4r�r�r�r��range�HIGHEST_PROTOCOL�proto�BasicTestMappingProtocol�bases�name�type�globalsr�r-�
startswith�suffix�mainr2rr�<module>r�s�������
�
�
�
�
�
�
�
�����
�
�
�
�	�	�	�	�������"�"�"�"�"�"�*�*�*�*�*�*�&�&�&�&�&�&����$�$�$�$�$�>�$�$�$�>yC�yC�yC�yC�yC�x� �yC�yC�yC�x;�;�;�;�;�;�;�;�:�:�:�:�:�.�:�:�:�
'�'�'�'�'��'�'�'�$������
�U�6�*�Q�.�
/�
/�S�S�E�
 �-�"H�I�E�'�u�'�'�'�D��d�4��#�j�%�%8�9�;�;�G�G�I�I�d�O�
��!G�H�E��<�>�>�S�S����*�*�6�2�2�2�2�2��!�!�"�"�%��5�5�5�5�v�5�5�5���$�t�U�+2�j�%�=P�Q�Q�S�S���	�	�$���	S��z����H�M�O�O�O�O�O��r