Sindbad~EG File Manager
�
'Μg���4�ddlZddlZddlZddlZddlZddlmZddlm Z
ejjZ
ejjZGd�de�ZGd�dej$�ZGd�d ej$�Zed
k(rej,�yy)�N)�Decimal)�Fractionc�N��eZdZ �fd�ZeZd�ZeZed��Zed��Z �xZ
S)�
DummyIntegralc�4��tt�|� |��S�N)r�super�__mul__)�self�other� __class__s ��4/usr/local/lib/python3.12/test/test_numeric_tower.pyr
zDummyIntegral.__mul__s����U�W�_�U�3�4�4�c��tSr)�NotImplemented�rrs r�__truediv__zDummyIntegral.__truediv__s���rc��t|�Sr�r�rs r� numeratorzDummyIntegral.numerators
���T�"�"rc��td�S)N�rrs r�denominatorzDummyIntegral.denominator!s
���Q��r)�__name__�
__module__�__qualname__r
�__rmul__r�__rtruediv__�propertyrr�
__classcell__)r
s@rrrs@���K�5��H���L�
�#��#�� �� rrc�<�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
y )
�HashTestc��|jt|�t|�dj||��|j||�y)Nz&got different hashes for {!r} and {!r})�assertEqual�hash�format)r�x�ys r�check_equal_hashzHashTest.check_equal_hash's=������a��$�q�'�A�H�H��A�N� P�����A�rc�L�|jdd�|jdd�y)NFrTr)r*rs r�
test_boolszHashTest.test_bools-s"�����e�Q�'����d�A�&rc�*�tdd�D]S}|j|t|��|j|t|��|j|t |���Utd�D�]w}d|zdz
}|tt|��k(r8|j|t|��|j|t|��|j|t|��|j|t |��|j|t|��|j|t |��d|z}|j|t|��|j|t|��|j|t|��|j|t |��|j|t|��|j|t |����ztd�D]�}t
jd�}t
jd|zd|z�}|j|t|��|j|t |��|tt|��k(s��|j|t|����y)Ni������d�ri,�
)�ranger*�float�D�F�int�random� randrange)r�i�n�_�es r�
test_integerszHashTest.test_integers1s���u�d�#�A��!�!�!�U�1�X�.��!�!�!�Q�q�T�*��!�!�!�Q�q�T�*�$��s��A��1��q��A��C��a��M�!��%�%�a��q��2��%�%�q�b�5��8�)�4��!�!�!�Q�q�T�*��!�!�!�Q�q�T�*��!�!�1�"�a���e�,��!�!�1�"�a���e�,��1��A��!�!�!�U�1�X�.��!�!�1�"�u�Q�x�i�0��!�!�!�Q�q�T�*��!�!�!�Q�q�T�*��!�!�1�"�a���e�,��!�!�1�"�a���e�,�!�&�t��A�� � ��%�A�� � �"�a�%���Q��/�A��!�!�!�Q�q�T�*��!�!�!�Q�q�T�*��C��a��M�!��%�%�a��q��2�
rc���|jdd�|jdtd��|jdtd��|jdtd��|jdtd��|jtd�td��|jtd�td��t d�D]�}tj
�t
jtj
�dzd z
�z}|j|tj|��|j|tj|����y)
N���rz-0.0�inf�-infr.gi@gY@) r*r4r5r3r2r7�math�exp�
from_float)rr;r(s r�test_binary_floatszHashTest.test_binary_floatsWs���
���c�4�(�
���c�1�Q�4�(����d�A�a�D�)����d�A�f�I�.����c�1�Q�4�(�
���e�E�l�A�e�H�5����e�F�m�Q�v�Y�7��t��A��
�
��$�(�(�6�=�=�?�5�+@�5�+H�"I�I�A��!�!�!�Q�\�\�!�_�5��!�!�!�Q�\�\�!�_�5�rc
��ddddddtd�td�g}d D]%}|D]}|j|t||��� �'y)
Nr?r@��?g�g�?g���rArB)r@r?)r3r*�complex)r�test_values�zero�values r�test_complexzHashTest.test_complexlsR���D�#�t�W�g��U�|�U�6�]�4���D�$���%�%�e�W�U�D�-A�B�%�rc�2�gd�}|D]&}|jt|�td���(|jtd�td��|jtd�td��|jtd�td��|jtd�td��|jtd �td
��|jtd�td
��|jtd�td
��|jtd
�td
��|jtd�td
��|jtd�td
��y)N)�0z-0z0.0z-0.0e10z000e-10rz1.00rz1.00000z-1.00���z-1.00000�123e2i0�1230e1�12300z12300.0z12300.00z 12300.000)r*r4)r�zerosrKs r�
test_decimalszHashTest.test_decimalsws��9���D��!�!�!�D�'�1�Q�4�0��
���a��i��1��.����a� �l�A�a�D�1����a��j�!�B�%�0����a�
�m�Q�r�U�3����a��j�!�E�(�3����a��k�1�U�8�4����a��j�!�E�(�3����a� �l�A�e�H�5����a�
�m�Q�u�X�6����a��n�a��h�7rc �&��|jttdt��t�|jttddtz��t�|jttdtzd��d�|jtttd��d�tj
t
d�t
d���|jt�fd��|jt��d�y) NrrP��rr0c�6���j�jzSr)rr)r(s�r�<lambda>z)HashTest.test_fractions.<locals>.<lambda>�s���Q�[�[����-Frg�?)
r%r&r5�_PyHASH_MODULUS�_PyHASH_INF�_from_coprime_intsr�assertRaises� TypeErrorr3)rr(s @r�test_fractionszHashTest.test_fractions�s����
����a��?�3�4�k�B�����a��A�o�$5�6�7�+��F�����a��/� 1�1�5�6��:�����a�� 0�!�4�5�q�9�
� � ��q�!1�=��3C�D�����)�%F�G�����q��3�'rc�`�Gd�d�}d|�h}|jt|�d�y)Nc��eZdZd�Zd�Zy)�6HashTest.test_hash_normalization.<locals>.HalibutProxyc��td�S�N�halibut)r&rs r�__hash__z?HashTest.test_hash_normalization.<locals>.HalibutProxy.__hash__�s���I��&rc��|dk(Sre�rs r�__eq__z=HashTest.test_hash_normalization.<locals>.HalibutProxy.__eq__�s
��� �)�)rN)rrrrgrjrirr�HalibutProxyrc�s��
'�
*rrkrfr)r%�len)rrkr(s r�test_hash_normalizationz HashTest.test_hash_normalization�s.�� *� *����'������Q���#rN)rrrr*r,r=rFrMrUr`rmrirrr#r#&s,���'�$3�L6�* C�8�$
(�$rr#c��eZdZd�Zd�Zy)�ComparisonTestc���td�td�dtdd�dddd d
td�td�td
�tdd�td�tdd�tdd�dtd�g}t|�D]Z\}}||dzdD]J}|j ||�|j||�|j
||�|j||��L�\y)NrBz-1e425000000g������i��rXg��Q� ����r?g�Tz1.2z1.3z1.4i_5i�z1.414213562373095048801688724iC�i�;i��:i�Jgvܼ5J�i�infinityr)r3r4r5� enumerate�
assertLess�assertLessEqual�
assertGreater�assertGreaterEqual)rrJr9�first�seconds r�test_mixed_comparisonsz%ComparisonTest.test_mixed_comparisons�s���
�&�M�
�n���
�c�1�I������
�e�H�
�e�H��%�L�
�f�f��
�-�.�
�f�e��
�i����
�j�M�%��("�+�.�H�A�u�%�a��c�d�+������v�.��$�$�U�F�3��"�"�6�5�1��'�'���6� ,�/rc��d}d}ddtd�td�td�fD]&}|j||�|j||��(ddtd�td�td�fD]J}|j ||�|j ||�|j ||�|j ||��Lddtd�td�td�ddtd�td�td�|fD]u}t
jt
jt
jt
jfD]2}|jt|||�|jt|||��4�wy)Ny�?y��Q� �������@rrHr0g@)r5r4rIr%�assertNotEqual�operator�le�lt�ge�gtr^r_)r�z�w�v�ops rrMzComparisonTest.test_complex�s<��
�����C��1��q��t�W�Q�Z�/�A����Q��"����Q��"�0��C��1��q��t�W�Q�Z�/�A�����1�%�����1�%�����1�%�����1�%� 0��S�!�A�$��!��g�a�j��S�!�A�$��!��g�a�j�!�5�A��k�k�8�;�;����X�[�[�H���!�!�)�R��A�6��!�!�)�R��A�6�I�5rN)rrrrzrMrirrroro�s��7�>7rro�__main__)�unittestr7rC�sysr}�decimalrr4� fractionsrr5� hash_info�modulusr[rAr\r6r�TestCaser#ror�mainrirr�<module>r�s����
��
�� �#��-�-�'�'���m�m���� �C� �(E$�x� � �E$�N57�X�&�&�57�p�z���H�M�M�O�r
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists