403Webshell
Server IP : 209.209.40.120  /  Your IP : 216.73.217.112
Web Server : Microsoft-IIS/10.0
System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586
User : NEWWWW$ ( 0)
PHP Version : 8.3.30
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /Python312/Lib/site-packages/numpy/testing/tests/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /Python312/Lib/site-packages/numpy/testing/tests/__pycache__/test_utils.cpython-312.pyc
�

	�g����ddlZddlZddlZddlZddlZddlZddlZddlZddl	m
cmZddl
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"Gd�d�Z#Gd�de#�Z$Gd�d�Z%Gd	�d
e$�Z&Gd�de#�Z'Gd
�de#�Z(Gd�d�Z)Gd�d�Z*Gd�d�Z+Gd�d�Z,Gd�d�Z-Gd�d�Z.Gd�d�Z/d�Z0d�Z1d�Z2d �Z3d!�Z4d"�Z5d#�Z6d$�Z7d%�Z8d&�Z9d'�Z:Gd(�d)e�Z;d*�Z<ejzj}e"d+�,�Gd-�d.��Z?ejzj�d/eeg�d0��ZAy)1�N)�assert_equal�assert_array_equal�assert_almost_equal�assert_array_almost_equal�assert_array_less�
build_err_msg�
assert_raises�assert_warns�assert_no_warnings�assert_allclose�assert_approx_equal�assert_array_almost_equal_nulp�assert_array_max_ulp�clear_and_catch_warnings�suppress_warnings�assert_string_equal�assert_�tempdir�temppath�assert_no_gc_cycles�HAS_REFCOUNTc�<�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
y	)
�_GenericTestc�(�|j||�y�N��_assert_func��self�a�bs   �@C:\Python312\Lib\site-packages\numpy/testing/tests/test_utils.py�_test_equalz_GenericTest._test_equals�����!�Q��c�p�tt�5|j||�ddd�y#1swYyxYwr)r	�AssertionErrorrrs   r"�_test_not_equalz_GenericTest._test_not_equals/��
�>�
*�	$����a��#�	$�	$�	$�s�,�5c��tjddg�}tjddg�}|j||�y)z/Test two equal array of rank 1 are found equal.��N��np�arrayr#rs   r"�test_array_rank1_eqz _GenericTest.test_array_rank1_eqs6���H�H�a��V����H�H�a��V�������A�r$c��tjddg�}tjddg�}|j||�y)z7Test two different array of rank 1 are found not equal.r)r*N�r,r-r'rs   r"�test_array_rank1_noteqz#_GenericTest.test_array_rank1_noteq%s6���H�H�a��V����H�H�a��V������Q��"r$c��tjddgddgg�}tjddgddgg�}|j||�y)z/Test two equal array of rank 2 are found equal.r)r*��Nr+rs   r"�test_array_rank2_eqz _GenericTest.test_array_rank2_eq,sH���H�H�q�!�f�q�!�f�%�&���H�H�q�!�f�q�!�f�%�&������A�r$c��tjddg�}tjddgddgg�}|j||�y)�:Test two arrays with different shapes are found not equal.r)r*Nr0rs   r"�test_array_diffshapez!_GenericTest.test_array_diffshape3s?���H�H�a��V����H�H�q�!�f�q�!�f�%�&�����Q��"r$c�b�tjddgt��}|j|d�y)zTest object arrays.r)��dtypeN)r,r-�objectr#�rr s  r"�
test_objarrayz_GenericTest.test_objarray:s&���H�H�a��V�6�*������A�r$c�,�|jgd�d�y)N�r)r*r3)r#�rs r"�test_array_likesz_GenericTest.test_array_likes?s������I�.r$N)�__name__�
__module__�__qualname__r#r'r.r1r5r8r>rB�r$r"rrs*�� �$��#��#��
/r$rc�l�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zy)�TestArrayEqualc��t|_yr)rrrAs r"�setup_methodzTestArrayEqual.setup_methodEs
��.��r$c�L���fd�}dD]
}||��dD]
}||��y)z!Test rank 1 array for all dtypes.c���tjd|�}|jd�|j�}|j�}|jd��j	||��j||�y)Nr*r)r�r,�empty�fill�copyr#r'��tr r!�crs    �r"�fooz.TestArrayEqual.test_generic_rank1.<locals>.fooJs^�������A��A�
�F�F�1�I�����A�����A�
�F�F�1�I����Q��"�� � ��A�&r$�?bhilqpBHILQPfdgFDG��S1�U1NrF�rrTrRs`  r"�test_generic_rank1z!TestArrayEqual.test_generic_rank1H�8���	'�'�	�A���F�	��	�A���F�	r$c�n�tjd�}tjd�}tjt�5}|j||�ddd�t
j�}td|v�|}|j||�tjd�}tjd�}d}tjttj|���5|j||�ddd�|}|j||�y#1swY��xYw#1swY�*xYw)NlCj�<T"3��w�
�-l(M$c7u��v�z"Mismatched elements: 1 / 1 (100%)
g�L�xr��Brz�Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 4.39506535e+12
Max relative difference among violations: inf
��match)r,r-�pytest�raisesr&r�str�valuer�re�escape)r�x�y�exc_info�msg�expected_msgs      r"�test_0_ndim_arrayz TestArrayEqual.test_0_ndim_array[s���H�H�9�:���H�H�8�9��
�]�]�>�
*�	$�h����a��#�	$��(�.�.�!���5���	�
�����!�Q���H�H�3�4���H�H�Q�K��J���]�]�>����<�1H�
I�	$����a��#�	$�
�����!�Q��'	$�	$��	$�	$�s�D�/D+�D(�+D4c�L���fd�}dD]
}||��dD]
}||��y)z!Test rank 3 array for all dtypes.c���tjd|�}|jd�|j�}|j�}|jd��j	||��j||�y)N)r4r*r3r)rrMrQs    �r"rTz.TestArrayEqual.test_generic_rank3.<locals>.foovs_�������A�&�A�
�F�F�1�I�����A�����A�
�F�F�1�I����Q��"�� � ��A�&r$rUrVNrFrYs`  r"�test_generic_rank3z!TestArrayEqual.test_generic_rank3tr[r$c��tjddtjg�}tjddtjg�}|j||�tjgd��}|j	||�y)z$Test arrays with nan values in them.r)r*r@N)r,r-�nanr#r'�rr r!rSs    r"�test_nan_arrayzTestArrayEqual.test_nan_array�s`���H�H�a��B�F�F�^�$���H�H�a��B�F�F�^�$������A���H�H�Y������Q��"r$c���tjddg�}tjddg�}|j||�tjddg�}|j||�y)r7�floupi�floupa�floupipiN)r,r-r#r'rps    r"�test_string_arraysz!TestArrayEqual.test_string_arrays�s[���H�H�h��)�*���H�H�h��)�*������A���H�H�j�(�+�,�����Q��"r$c���tjddtfdtfg�}ddg|d<ddg|d<|j�}|j	||�tjddtfdtfdtfg�}|dj�|d<|dj�|d<tjt�5|j||�ddd�y#1swYyxYw)zTest record arrays.r*rsrtr)ruN)	r,rN�floatrPr#r_r`�	TypeErrorr'rps    r"�test_recarrayszTestArrayEqual.test_recarrays�s����H�H�Q�(�E�*�X�u�,=�>�?���!�f��(���!�f��(��
�F�F�H������A���H�H�Q�*�e�,�"�E�*�X�u�,=�?�
@���(��(�(�*��*�
���k�&�&�(��(��
�]�]�9�
%�	'�� � ��A�&�	'�	'�	'�s�C!�!C*c��tjjgd�gd���}tjdtjdg�}|j||�|j||�tjjgd�gd���}tjtjddg�}|j||�|j||�y)N��@�@�@)FTF��maskr}r)TFFr~)r,�ma�MaskedArrayr-ror#�infrs   r"�test_masked_nan_infz"TestArrayEqual.test_masked_nan_inf�s����E�E���m�2F��G���H�H�b�"�&�&�#�&�'������A������A���E�E���m�2F��G���H�H�b�f�f�b�#�&�'������A������A�r$c�R�Gd�dtj�}tjddg�j|�}tjddg�j|�}t	t||k(�t�t	||k(�t	||k7�|j||�|j||�|j||�d}tjttj|���5|j||�ddd�tjdd	g�j|�}d
}tjttj|���5|j||�ddd�y#1swY�{xYw#1swYyxYw)Nc��eZdZd�Zd�Zy)�?TestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArrayc�\�ttj||�j��Sr)�boolr,�equal�all�r�others  r"�__eq__zFTestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArray.__eq__�s!���B�H�H�T�5�1�5�5�7�8�8r$c��||k(SrrFr�s  r"�__ne__zFTestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArray.__ne__�s���5�=�(�(r$N)rCrDrEr�r�rFr$r"�MyArrayr��s��
9�
)r$r���?�@r}z{Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 1.
Max relative difference among violations: 0.5r]�g333333@z{Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 2.
Max relative difference among violations: inf)r,�ndarrayr-�viewr�typer�r#r'r_r`r&rcrd)rr�r r!rirSs      r"�test_subclass_that_overrides_eqz.TestArrayEqual.test_subclass_that_overrides_eq�sV��
	)�b�j�j�	)�
�H�H�b�"�X��#�#�G�,���H�H�b�"�X��#�#�G�,����Q�!�V��d�#���Q�����Q�������A�����Q��"����Q��"�H���]�]�>����<�1H�
I�	#����Q��"�	#�
�H�H�b�#�Y��$�$�W�-��H���]�]�>����<�1H�
I�	#����Q��"�	#�	#�	#�	#��	#�	#�s�F�5F�F�F&c��Gd�dtj�}tjddg�j|�}tjddg�j|�}t	t
�5tj|�ddd�|j||�|j||�|j||�y#1swY�@xYw)Nc��eZdZd�Zy)�KTestArrayEqual.test_subclass_that_does_not_implement_npall.<locals>.MyArrayc��tSr)�NotImplemented�r�args�kwargss   r"�__array_function__z^TestArrayEqual.test_subclass_that_does_not_implement_npall.<locals>.MyArray.__array_function__�s��%�%r$N)rCrDrEr�rFr$r"r�r��s��
&r$r�r�r�r})	r,r�r-r�r	ryr�r#r')rr�r r!s    r"�+test_subclass_that_does_not_implement_npallz:TestArrayEqual.test_subclass_that_does_not_implement_npall�s���	&�b�j�j�	&�
�H�H�b�"�X��#�#�G�,���H�H�b�"�X��#�#�G�,��
�9�
%�	��F�F�1�I�	�����A�����Q��"����Q��"�		�	�s�5C
�
Cc	��tjt�5tjd��5tj
j
tjgd�tj�tjgd�tj��ddd�ddd�y#1swY�xYw#1swYyxYw)N�raise�r�r@)r)g�Ww'&l�7r3)	r_r`r&r,�errstate�testingrr-�float32rAs r"�test_suppress_overflow_warningsz.TestArrayEqual.test_suppress_overflow_warnings�s��
�]�]�>�
*�	9�����)�
9��
�
�-�-��H�H�Y��
�
�3��H�H�]�B�J�J�7�9�
9�	9�	9�
9�
9��	9�	9�s#�B7�A)B+�B7�+B4	�0B7�7Cc�Z�tjgd��}d}|j||�y)z@Test comparing an array with a scalar when all values are equal.�r�r�r�r�Nr+rs   r"�test_array_vs_scalar_is_equalz,TestArrayEqual.test_array_vs_scalar_is_equal�s%���H�H�\�"��������A�r$c���tjgd��}tjgd��}d}tjttj|���5|j||�ddd�tjgd��}d}tjttj|���5|j||�ddd�y#1swY�lxYw#1swYyxYw)z@Test comparing an array with a scalar when not all values equal.)骈�S�g��6�)r�r�r�rzMismatched elements: 1 / 4 (25%)
Max absolute difference among violations: 563766
Max relative difference among violations: infr]N)r�r�g���̜�Ar�z�Mismatched elements: 2 / 4 (50%)
Max absolute difference among violations: 563766.
Max relative difference among violations: 4.54902139e-07�r,r-r_r`r&rcrdr�rr r!ris    r"�test_array_vs_array_not_equalz,TestArrayEqual.test_array_vs_array_not_equal�s����H�H�4�5���H�H�/�0��H���]�]�>����<�1H�
I�	$����a��#�	$�
�H�H�6�7��)��
�]�]�>����<�1H�
I�	$����a��#�	$�	$�	$�	$��	$�	$�s�C�C)�C&�)C2c��tjgd��}d}tjt�5|j||d��ddd�y#1swYyxYw)z9Test comparing an array with a scalar with strict option.r�r�T��strictN�r,r-r_r`r&rrs   r"�test_array_vs_scalar_strictz*TestArrayEqual.test_array_vs_scalar_strict
sK���H�H�\�"����
�]�]�>�
*�	1����a��4��0�	1�	1�	1�s�A�Ac��tjgd��}tjgd��}|j||d��y)�-Test comparing two arrays with strict option.r�Tr�N)r,r-rrs   r"�test_array_vs_array_strictz)TestArrayEqual.test_array_vs_array_stricts3���H�H�\�"���H�H�\�"�����!�Q�t��,r$c���tjgd��}tjgd��}tjt�5|j||d��ddd�y#1swYyxYw)r�)r)r)r)r�Tr�Nr�rs   r"� test_array_vs_float_array_strictz/TestArrayEqual.test_array_vs_float_array_strictsT���H�H�Y����H�H�\�"��
�]�]�>�
*�	1����a��4��0�	1�	1�	1�s�A&�&A/N)rCrDrErJrZrjrmrqrvrzr�r�r�r�r�r�r�r�r�rFr$r"rHrHCsS��/��& �2�&#�	#�'�"	� #�D#�9��$�(1�-�1r$rHc�$�eZdZd�Zd�Zd�Zd�Zy)�TestBuildErrorMessagec��tjgd��}tjgd��}d}t||g|�}d}t||�y)N�gr�Z|
�?�r�Z|
@�&��@�g㈵��?�&��@�㈵�@�There is a mismatchz�
Items are not equal: There is a mismatch
 ACTUAL: array([1.00001, 2.00002, 3.00003])
 DESIRED: array([1.00002, 2.00003, 3.00004])�r,r-rr�rrerf�err_msgr r!s      r"�test_build_err_msg_defaultsz1TestBuildErrorMessage.test_build_err_msg_defaults$sH���H�H�0�1���H�H�0�1��'���1�a�&�'�*��"��	�Q��r$c��tjgd��}tjgd��}d}t||g|d��}d}t||�y)Nr�r�r�F)�verbosez)
Items are not equal: There is a mismatchr�r�s      r"�test_build_err_msg_no_verbosez3TestBuildErrorMessage.test_build_err_msg_no_verbose/sF���H�H�0�1���H�H�0�1��'���1�a�&�'�5�9��8���Q��r$c��tjgd��}tjgd��}d}t||g|d��}d}t||�y)Nr�r�r�)�FOO�BAR)�namesz{
Items are not equal: There is a mismatch
 FOO: array([1.00001, 2.00002, 3.00003])
 BAR: array([1.00002, 2.00003, 3.00004])r�r�s      r"�test_build_err_msg_custom_namesz5TestBuildErrorMessage.test_build_err_msg_custom_names8sJ���H�H�0�1���H�H�0�1��'���1�a�&�'��@����	�Q��r$c��tjgd��}tjgd��}d}t||g|d��}d}t||�y)N)g0�D�?r�r�)g_p��?r�r�r��
)�	precisionz�
Items are not equal: There is a mismatch
 ACTUAL: array([1.000000001, 2.00002    , 3.00003    ])
 DESIRED: array([1.000000002, 2.00003    , 3.00004    ])r�r�s      r"�#test_build_err_msg_custom_precisionz9TestBuildErrorMessage.test_build_err_msg_custom_precisionCsJ���H�H�4�5���H�H�4�5��'���1�a�&�'�R�8��7��	�Q��r$N)rCrDrEr�r�r�r�rFr$r"r�r�"s��	��	�	r$r�c�H�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zy)�	TestEqualc��t|_yr)rrrAs r"rJzTestEqual.setup_methodQs
��(��r$c�^�|jtjtj�|jtjgtjg�|jtjtjg�|jtjd�y�Nr))rr,ror'rAs r"�test_nan_itemszTestEqual.test_nan_itemsTsd�����"�&�&�"�&�&�)����2�6�6�(�R�V�V�H�-����R�V�V�b�f�f�X�.����R�V�V�Q�'r$c��|jtjtj�|jtjgtjg�|jtjtjg�yr)rr,r�r'rAs r"�test_inf_itemszTestEqual.test_inf_itemsZsP�����"�&�&�"�&�&�)����2�6�6�(�R�V�V�H�-����R�V�V�b�f�f�X�.r$c���|jtjdd�tjdd��|jtjdd�tjdd��|jtjdd�tjdd��|jtjdd�tjdd��y)N�
2017-01-01�s�mz
2017-01-02)r#r,�
datetime64r'rAs r"�
test_datetimezTestEqual.test_datetime_s�������M�M�,��,��M�M�,��,�	
�	
����M�M�,��,��M�M�,��,�	
�	
����M�M�,��,��M�M�,��,�	
�	
����M�M�,��,��M�M�,��,�	
r$c�^�tjd�}tjdd�}tjdd�}tjd�}tjdd�}tjdd�}|||g}|||g}tj||�D]>\}	}
|j|	|
�|j|	g|
g�|j
|	g|
��@tj||�D]>\}	}
|j|	|
�|j|	g|
g�|j
|	g|
��@tj||�D]�\}	}
|j
|	|
�|j
|	|
g�|j
|	g|
g�|j
|	gtjdd��|j
|
gtjdd��|j
|	gtjdd��|j
|
gtjdd����y)N�NaTr��nsr��{)r,r��timedelta64�	itertools�productrr')r�nadt_no_unit�nadt_s�nadt_d�natd_no_unit�natd_s�natd_d�dts�tdsr r!s           r"�test_nat_itemszTestEqual.test_nat_itemsss����}�}�U�+�����u�c�*�����u�d�+���~�~�e�,������s�+������t�,���V�V�,���V�V�,���%�%�c�3�/�	)�D�A�q����a��#����q�c�A�3�'�� � �!��a�(�	)�
�%�%�c�3�/�	)�D�A�q����a��#����q�c�A�3�'�� � �!��a�(�	)�
�%�%�c�3�/�	@�D�A�q�� � ��A�&�� � ��Q�C�(�� � �!��q�c�*�� � �!��b�m�m�L�#�&F�G�� � �!��b�m�m�L�#�&F�G�� � �!��b�n�n�S�#�&>�?�� � �!��b�n�n�S�#�&>�?�	@r$c�L�|jdd�|jdd�y)N�ab�abb)rr'rAs r"�test_non_numericzTestEqual.test_non_numeric�s"�����$��%����T�5�)r$c�`�|jtdd�tdd��|jtdtj�tdtj��|j	tdtj�tdd��|j	ttjd�tdtj��|j	ttjtj
�ttjd��y�Nr)r*)r�complexr,ror'r�rAs r"�test_complex_itemzTestEqual.test_complex_item�s������'�!�Q�-���A��7����'�!�R�V�V�,�g�a����.@�A����W�Q����/���A��?����W�R�V�V�Q�/���B�F�F�1C�D����W�R�V�V�R�V�V�4�g�b�f�f�a�6H�Ir$c�`�|jtjtj�yr)r'�ncu�PZERO�NZEROrAs r"�test_negative_zerozTestEqual.test_negative_zero�s�����S�Y�Y��	�	�2r$c��tjtdd�tdtj�g�}tjtdd�tdd�g�}|j	||�|j||�yr��r,r-r�rorr'�rrerfs   r"�test_complexzTestEqual.test_complex�se���H�H�g�a��m�W�Q����%7�8�9���H�H�g�a��m�W�Q��]�3�4�����!�Q�����Q��"r$c��ddl}tj|jddd�|jddd�g�}|j||ddd��y)Nri�r)r*���)�datetimer,r-r')rrr s   r"�test_objectzTestEqual.test_object�sS����H�H�h�'�'��a��3��'�'��a��3�5�
6�����Q��$�B�$��(r$N)
rCrDrErJr�r�r�r�r�r�rrrrFr$r"r�r�Os6��)�(�/�

�(@�>*�J�3�#�)r$r�c�B�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zy
)�TestArrayAlmostEqualc��t|_yr)rrrAs r"rJz!TestArrayAlmostEqual.setup_method�s
��5��r$c��d}tjttj|���5|jddd��ddd�|jdgdgd��d}tjttj|���5|jdgdgd��ddd�dd	g}d
dg}d}tjttj|���5|j||d��ddd�d
}tjttj|���5|j||d��ddd�y#1swY��xYw#1swY��xYw#1swY�pxYw#1swYyxYw)Nz}Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.5
Max relative difference among violations: infr]��?r�r��decimal���?ge
(��?giUMu�>gB?���?zMismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 3.e-05
Max relative difference among violations: inf�z~Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 3.e-05
Max relative difference among violations: 1.�r_r`r&rcrdr)rrir r!s    r"�test_closenessz#TestArrayAlmostEqual.test_closeness�sg��H���]�]�>����<�1H�
I�	3����c�3���2�	3�	
���8�*�s�e�Q��7�H���]�]�>����<�1H�
I�	7����s�e�c�U�A��6�	7��� ��
��O��H���]�]�>����<�1H�
I�	/����a��A��.�	/�G���]�]�>����<�1H�
I�	/����a��A��.�	/�	/�/	3�	3��	7�	7��	/�	/��	/�	/�s/�E�E#�+E/�8E;�E �#E,�/E8�;Fc�^�tjdg�}tjdg�}|j||d��|j||d��d}tjt
t
j|���5|j||d��ddd�y#1swYyxYw)	Ng��e��H�@g�w���H�@r3rr4z�Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.e-04
Max relative difference among violations: 8.10226812e-08r]��r,r-rr_r`r&rcrd�rrerfris    r"�test_simplez TestArrayAlmostEqual.test_simple�s����H�H�i�[�!���H�H�i�[�!�����!�Q���*����!�Q���*�)��
�]�]�>����<�1H�
I�	/����a��A��.�	/�	/�	/�s�B#�#B,c���gd�}d}d}tjttj|���5|j||d��ddd�d}tjttj|���5|j||d��ddd�ddg}d	}tjttj|���5|j||d
��ddd�d}d	}tjttj|���5|j||d
��ddd�y#1swY��xYw#1swY��xYw#1swY�qxYw#1swYyxYw)N)�mlz�@gHP�X��@r�rz�Mismatched elements: 2 / 3 (66.7%)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: 1.r]�	rz�Mismatched elements: 2 / 3 (66.7%)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: 5.4722099r�z�Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: infrrrr�s    r"�test_array_vs_scalarz)TestArrayAlmostEqual.test_array_vs_scalar�sP��)����G���]�]�>����<�1H�
I�	/����a��A��.�	/�N���]�]�>����<�1H�
I�	/����a��A��.�	/�����H���]�]�>����<�1H�
I�	/����a��A��.�	/�
��H���]�]�>����<�1H�
I�	/����a��A��.�	/�	/�/	/�	/��	/�	/��	/�	/��	/�	/�s/�E�E�E�$E&�E�E�E#�&E/c�j�����tjtjg��tjdg��tjtjg���j	���tt���fd��tt���fd��tt���fd��y)Nr)c�(���j���Srr��anan�aoners���r"�<lambda>z/TestArrayAlmostEqual.test_nan.<locals>.<lambda>����d�/�/��d�;�r$c�(���j���Srr��ainfr$rs���r"r&z/TestArrayAlmostEqual.test_nan.<locals>.<lambda>r'r$c�(���j���Srrr)s���r"r&z/TestArrayAlmostEqual.test_nan.<locals>.<lambda>r'r$�r,r-ror�rr	r&�rr*r$r%s`@@@r"�test_nanzTestArrayAlmostEqual.test_nansq����x�x�����!���x�x���}���x�x�����!�����$��%��n�;�	=��n�;�	=��n�;�	=r$c�����tjddgddgg���j��tj�d<t	t
���fd��tj�d<t	t
���fd��y)Nr�r�r}r~)rrc�(���j���Srr�r r!rs���r"r&z/TestArrayAlmostEqual.test_inf.<locals>.<lambda>����d�/�/��1�5�r$c�(���j���Srrr1s���r"r&z/TestArrayAlmostEqual.test_inf.<locals>.<lambda>r2r$)r,r-rPr�r	r&rs`@@r"�test_infzTestArrayAlmostEqual.test_infs_����H�H�r�2�h��R��)�*��
�F�F�H���&�&��$���n�5�	7��6�6�'��$���n�5�	7r$c���tjddgddgg�}tjjddgddggddgddgg�}|j	||�|j	||�|j	||�tjjdd�	�}tjgd
��}|j
||�|j
||�tjj}tjgd
��}|j
||�|j
||�tjjgd
�gd��	�}tjgd��}|j
||�|j
||�tjjgd
�gd��	�}tjd�}|j
||�|j
||�y)
Nr�r�r}r~r�FTg@r�r|)TTT)r�r�r})r,r-r��masked_arrayrr�r#�maskedrs   r"�
test_subclassz"TestArrayAlmostEqual.test_subclasss����H�H�r�2�h��R��)�*���E�E����R��2�r�(�3�!&����u�
�>�
@�����!�Q�����!�Q�����!�Q��
�E�E���c���-���H�H�]�#������A������A���E�E�L�L���H�H�]�#������A������A���E�E���m�2D��E���H�H�\�"������A������A���E�E���m�2D��E���H�H�R�L������A������A�r$c��Gd�dtj�}tjddg�j|�}|j	||�tjddg�j|�}t|�tjddg�j|�}d}t
jttj|���5|j	||�ddd�y#1swYyxYw)	Nc�.��eZdZ�fd�Z�fd�Zd�Z�xZS)�5TestArrayAlmostEqual.test_subclass_2.<locals>.MyArrayc�\��t�|�|�jtj�Sr��superr�r�r,r��rr��	__class__s  �r"r�z<TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.__eq__>�!����w�~�e�,�1�1�"�*�*�=�=r$c�\��t�|�|�jtj�Sr�r>�__lt__r�r,r�r?s  �r"rDz<TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.__lt__ArAr$c��t|�Srr�r�s   r"r�z9TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.allDs���4�y� r$�rCrDrEr�rDr��
__classcell__�r@s@r"r�r;=s���
>�
>�
!r$r�r�r�T��z�Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 200.
Max relative difference among violations: 0.99009r])r,r�r-r�rr�r_r`r&rcrd)rr�r �zr!ris      r"�test_subclass_2z$TestArrayAlmostEqual.test_subclass_28s���
	!�b�j�j�	!�
�H�H�b�"�X��#�#�G�,�����!�Q���H�H�d�D�\�"�'�'��0���A���H�H�b�#�Y��$�$�W�-��L���]�]�>����<�1H�
I�	$����a��#�	$�	$�	$�s�C5�5C>c��Gd�dtj�}tjddg�j|�}|j	||�y)Nc�.��eZdZ�fd�Z�fd�Zd�Z�xZS)�GTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArrayc�\��t�|�|�jtj�Srr=r?s  �r"r�zNTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__eq__YrAr$c�\��t�|�|�jtj�SrrCr?s  �r"rDzNTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__lt__\rAr$c��t�r��NotImplementedErrorr�s   r"r�zKTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.all_���)�)r$rFrHs@r"r�rNX����
>�
>�
*r$r�r�r��r,r�r-r�r�rr�r s   r"�!test_subclass_that_cannot_be_boolz6TestArrayAlmostEqual.test_subclass_that_cannot_be_boolS�A��
	*�b�j�j�	*�
�H�H�b�"�X��#�#�G�,�����!�Q�r$N)rCrDrErJrrr r.r4r8rKrXrFr$r"rr�s1��6�#/�J
/�/�B
=�7��4$�6 r$rc�H�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zy)�TestAlmostEqualc��t|_yr)rrrAs r"rJzTestAlmostEqual.setup_methodh�
��/��r$c����jddd��tt�fd���jdgdgd��tt�fd��y)Nrr�rrc�,���jddd��S�Nrr�rrrrAs�r"r&z0TestAlmostEqual.test_closeness.<locals>.<lambda>us���d�/�/��S�!�/�D�r$c�0���jdgdgd��Sr`rrAs�r"r&z0TestAlmostEqual.test_closeness.<locals>.<lambda>zs���d�/�/����u�a�/�H�r$�rr	r&rAs`r"rzTestAlmostEqual.test_closenessksQ���	
���(�C���3��n�D�	F�	
���8�*�s�e�Q��7��n�H�	Jr$c�����jtjtj�tt�fd��tt�fd��tt�fd��y)Nc�D���jtjd�Sr�)rr,rorAs�r"r&z/TestAlmostEqual.test_nan_item.<locals>.<lambda>����d�/�/�����:�r$c�`���jtjtj�Sr)rr,ror�rAs�r"r&z/TestAlmostEqual.test_nan_item.<locals>.<lambda>�����d�/�/�������?�r$c�`���jtjtj�Sr)rr,r�rorAs�r"r&z/TestAlmostEqual.test_nan_item.<locals>.<lambda>�rgr$)rr,ror	r&rAs`r"�
test_nan_itemzTestAlmostEqual.test_nan_item|sD������"�&�&�"�&�&�)��n�:�	<��n�?�	A��n�?�	Ar$c����jtjtj��jtjtj�tt�fd��tt�fd��y)Nc�D���jtjd�Sr��rr,r�rAs�r"r&z/TestAlmostEqual.test_inf_item.<locals>.<lambda>�rer$c�b���jtjtj�SrrlrAs�r"r&z/TestAlmostEqual.test_inf_item.<locals>.<lambda>�s���d�/�/��������@�r$)rr,r�r	r&rAs`r"�
test_inf_itemzTestAlmostEqual.test_inf_item�sR������"�&�&�"�&�&�)����2�6�6�'�B�F�F�7�+��n�:�	<��n�@�	Br$c�(�|jdd�yr�)r'rAs r"�test_simple_itemz TestAlmostEqual.test_simple_item�s�����Q��"r$c��|jtdd�tdd��|jtdtj�tdtj��|jttjtj�ttjtj��|jtdtj�tdd��|jttjd�tdtj��|jttjtj�ttjd��yr�)rr�r,ror�r'rAs r"r�z!TestAlmostEqual.test_complex_item�s������'�!�Q�-���A��7����'�!�R�V�V�,�g�a����.@�A����'�"�&�&�"�&�&�1�7�2�6�6�2�6�6�3J�K����W�Q����/���A��?����W�R�V�V�Q�/���B�F�F�1C�D����W�R�V�V�R�V�V�4�g�b�f�f�a�6H�Ir$c��tjtdd�tdtj�g�}tjtdd�ttjd�g�}tjtdd�tdd�g�}|j	||�|j||�|j||�yr�r)rrerJrfs    r"rzTestAlmostEqual.test_complex�s����H�H�g�a��m�W�Q����%7�8�9���H�H�g�a��m�W�R�V�V�Q�%7�8�9���H�H�g�a��m�W�Q��]�3�4�����!�Q�����Q��"����Q��"r$c��tjgd��}tjgd��}d}tjttj|���5|j||d��ddd�d}tjttj|���5|j||�ddd�tjtjd	g�}tjtjd
g�}d}tjttj|���5|j||�ddd�tjd
dg�}tjd	d	g�}d
}tjttj|���5|j||�ddd�y#1swY��dxYw#1swY��&xYw#1swY��xYw#1swYyxYw)z�Check the message is formatted correctly for the decimal value.
           Also check the message when input includes inf or nan (gh12200))g��?g�@r�)g�_�?g�@r�aMismatched elements: 3 / 3 (100%)
Max absolute difference among violations: 1.e-05
Max relative difference among violations: 3.33328889e-06
 ACTUAL: array([1.00000000001, 2.00000000002, 3.00003      ])
 DESIRED: array([1.00000000002, 2.00000000003, 3.00004      ])r]�rNz�Mismatched elements: 1 / 3 (33.3%)
Max absolute difference among violations: 1.e-05
Max relative difference among violations: 3.33328889e-06
 ACTUAL: array([1.     , 2.     , 3.00003])
 DESIRED: array([1.     , 2.     , 3.00004])rr)z�Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 1.
Max relative difference among violations: 1.
 ACTUAL: array([inf,  0.])
 DESIRED: array([inf,  1.])r*z{Mismatched elements: 2 / 2 (100%)
Max absolute difference among violations: 2
Max relative difference among violations: inf)	r,r-r_r`r&rcrdrr�rs    r"�test_error_messagez"TestAlmostEqual.test_error_message�s���
�H�H�<�=���H�H�<�=��*���]�]�>����<�1H�
I�	0����a��B��/�	0�G���]�]�>����<�1H�
I�	$����a��#�	$�
�H�H�b�f�f�a�[�!���H�H�b�f�f�a�[�!��6��
�]�]�>����<�1H�
I�	$����a��#�	$�
�H�H�a��V����H�H�a��V���H���]�]�>����<�1H�
I�	$����a��#�	$�	$�A	0�	0��	$�	$��	$�	$��	$�	$�s0�G�,G#�G0�:G<�G �#G-�0G9�<Hc��	d}tjd�}d}tjttj|���5|j||�ddd�d}tjd�}d}tjttj|���5|j||�ddd�y#1swY�lxYw#1swYyxYw)z)Check the message is formatted correctly r*�z}Mismatched elements: 20 / 20 (100%)
Max absolute difference among violations: 1.
Max relative difference among violations: 1.r]Nz~Mismatched elements: 20 / 20 (100%)
Max absolute difference among violations: 1.
Max relative difference among violations: 0.5)r,�onesr_r`r&rcrdrrs    r"�test_error_message_2z$TestAlmostEqual.test_error_message_2�s���-�
���G�G�B�K��G���]�]�>����<�1H�
I�	$����a��#�	$�
���G�G�B�K��H���]�]�>����<�1H�
I�	$����a��#�	$�	$�	$�	$��	$�	$�s�	C�+C�C�Cc��Gd�dtj�}tjddg�j|�}|j	||�y)Nc�.��eZdZ�fd�Z�fd�Zd�Z�xZS)�BTestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArrayc�\��t�|�|�jtj�Srr=r?s  �r"r�zITestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__eq__�rAr$c�\��t�|�|�jtj�SrrCr?s  �r"rDzITestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__lt__�rAr$c��t�rrRr�s   r"r�zFTestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.all�rTr$rFrHs@r"r�r|�rUr$r�r�r�rVrWs   r"rXz1TestAlmostEqual.test_subclass_that_cannot_be_bool�rYr$N)
rCrDrErJrrirnrpr�rruryrXrFr$r"r[r[fs9��0�J�"A�B�#�J�#�1$�f$�& r$r[c�*�eZdZd�Zd�Zd�Zd�Zd�Zy)�TestApproxEqualc��t|_yr)r
rrAs r"rJzTestApproxEqual.setup_method�r]r$c������tjd��tjd���j��d���j��d��tt���fd��y)N�{�G�H�@�R���H�@r��significant�c�,���j��d��S�Nrr�rrs���r"r&z7TestApproxEqual.test_simple_0d_arrays.<locals>.<lambda>����d�/�/��1�!�/�D�r$)r,r-rr	r&rs`@@r"�test_simple_0d_arraysz%TestApproxEqual.test_simple_0d_arrays�sW����H�H�W����H�H�W������!�Q�A��.����!�Q�A��.��n�D�	Fr$c�����d�d��j��d���j��d���j��d��tt���fd��y)Nr�r�r4r�rr�c�,���j��d��Sr�rrs���r"r&z3TestApproxEqual.test_simple_items.<locals>.<lambda>r�r$rbrs`@@r"�test_simple_itemsz!TestApproxEqual.test_simple_itemssZ����������!�Q�A��.����!�Q�A��.����!�Q�A��.��n�D�	Fr$c�d�����tjtj��tjd��tjtj���j	���tt���fd��tt���fd��tt���fd��y)Nr)c�(���j���Srrr#s���r"r&z0TestApproxEqual.test_nan_array.<locals>.<lambda>����d�.?�.?��d�.K�r$c�(���j���Srrr)s���r"r&z0TestApproxEqual.test_nan_array.<locals>.<lambda>r�r$c�(���j���Srrr)s���r"r&z0TestApproxEqual.test_nan_array.<locals>.<lambda>r�r$r,r-s`@@@r"rqzTestApproxEqual.test_nan_array�e����x�x�������x�x��{���x�x���������$��%��n�&K�L��n�&K�L��n�&K�Lr$c�d�����tjtj��tjd��tjtj���j	���tt���fd��tt���fd��tt���fd��y)Nr)c�(���j���Srrr#s���r"r&z0TestApproxEqual.test_nan_items.<locals>.<lambda>r�r$c�(���j���Srrr)s���r"r&z0TestApproxEqual.test_nan_items.<locals>.<lambda> r�r$c�(���j���Srrr)s���r"r&z0TestApproxEqual.test_nan_items.<locals>.<lambda>!r�r$r,r-s`@@@r"r�zTestApproxEqual.test_nan_itemsr�r$N)rCrDrErJr�r�rqr�rFr$r"r�r��s��0�F�F�M�Mr$r�c�T�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zy
)�TestArrayAssertLessc��t|_yr)rrrAs r"rJz TestArrayAssertLess.setup_method&s
��-��r$c�@����tjddg��tjddg���j���tt���fd��tjddg��tt���fd��tt���fd��tjgd	��}tjgd
��}d}tjttj|���5�j||�ddd�y#1swYyxYw)
N皙�����?皙����@�333333�?�ffffff@c�(���j���Srrrs���r"r&z8TestArrayAssertLess.test_simple_arrays.<locals>.<lambda>.����d�.?�.?��1�.E�r$r�c�(���j���Srrrs���r"r&z8TestArrayAssertLess.test_simple_arrays.<locals>.<lambda>2r�r$c�(���j���Srrrs���r"r&z8TestArrayAssertLess.test_simple_arrays.<locals>.<lambda>3r�r$)r)r3r�rw)r*r4r��z{Mismatched elements: 2 / 4 (50%)
Max absolute difference among violations: 12
Max relative difference among violations: 1.5r])	r,r-rr	r&r_r`rcrd)rr r!rirerfs`   @@r"�test_simple_arraysz&TestArrayAssertLess.test_simple_arrays)s�����H�H�c�3�Z� ���H�H�c�3�Z� �����!�Q���n�&E�F��H�H�c�3�Z� ���n�&E�F��n�&E�F��H�H�]�#���H�H�\�"��H���]�]�>����<�1H�
I�	$����a��#�	$�	$�	$�s�8D�Dc������tjddgddgg��tjddgddgg���j���d	}tjt
t
j|��
�5�j���ddd�tjddgddgg��tt
���fd��tt
���fd
��y#1swY�OxYw)Nr�r��ffffff
@g������@r�r�g333333@g@z�Mismatched elements: 4 / 4 (100%)
Max absolute difference among violations: 0.1
Max relative difference among violations: 0.09090909r]r�c�(���j���Srrrs���r"r&z0TestArrayAssertLess.test_rank2.<locals>.<lambda>Jr�r$c�(���j���Srrrs���r"r&z0TestArrayAssertLess.test_rank2.<locals>.<lambda>Kr�r$)	r,r-rr_r`r&rcrdr	�rrirerfs` @@r"�
test_rank2zTestArrayAssertLess.test_rank2>s�����H�H�s�C�j�3��*�-�.���H�H�s�C�j�3��*�-�.�����!�Q��O���]�]�>����<�1H�
I�	$����a��#�	$�
�H�H�s�C�j�3��*�-�.���n�&E�F��n�&E�F�	$�	$�s�<C�C&c�����tjd���tjd��dz��j���tt���fd��d�d<d}tjttj|���5�j���ddd�tt���fd	��y#1swY�xYw)
N)r*r*r*)�shaper)c�(���j���Srrrs���r"r&z0TestArrayAssertLess.test_rank3.<locals>.<lambda>Rr�r$r)rrrz}Mismatched elements: 1 / 8 (12.5%)
Max absolute difference among violations: 1.
Max relative difference among violations: infr]c�(���j���Srrrs���r"r&z0TestArrayAssertLess.test_rank3.<locals>.<lambda>[r�r$)	r,rxrr	r&r_r`rcrdr�s` @@r"�
test_rank3zTestArrayAssertLess.test_rank3Ms�����G�G�)�$���G�G�)�$�Q�&�����!�Q���n�&E�F���'�
�H���]�]�>����<�1H�
I�	$����a��#�	$�	�n�&E�F�	$�	$�s�C�C	c�����d�d��j���d}tjtt	j
|���5�j���ddd�t
jddg���j���tt���fd��t
jddg��tt���fd��y#1swY�txYw)	Nr�r�z|Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.1
Max relative difference among violations: 1.r]r�c�(���j���Srrrs���r"r&z7TestArrayAssertLess.test_simple_items.<locals>.<lambda>kr�r$r�c�(���j���Srrrs���r"r&z7TestArrayAssertLess.test_simple_items.<locals>.<lambda>or�r$)	rr_r`r&rcrdr,r-r	r�s` @@r"r�z%TestArrayAssertLess.test_simple_items]s�����������!�Q��G���]�]�>����<�1H�
I�	$����a��#�	$�
�H�H�c�3�Z� �����!�Q���n�&E�F��H�H�c�3�Z� ���n�&E�F�	$�	$�s�
C�Cc�,�tjgd�gd�gd�g�}d}|j||�d}|j||�tjgd�gd�gd�g�}d	}d
}tjt
t
j|���5|j||�ddd�d}tjt
t
j|���5|j||�ddd�y#1swY�UxYw#1swYyxYw)
N)g.c}�j�@g��镲hx@g�|y��E@g㥛Ġ��@)g��Q�EK@gH�}���@g*@�V-�Xy@)��(\��@�G�z� @�n���V@g������t@g��Q���@gmXSY� @)g��k	��@g6<�R��@g�//��8{@g�Mbе�A)gףp=�I�@�H�ze}.Ag=
ף��@r�)r�r�r�g��ye}.Ar�z}Mismatched elements: 1 / 12 (8.33%)
Max absolute difference among violations: 0.
Max relative difference among violations: 0.r]z�Mismatched elements: 12 / 12 (100%)
Max absolute difference among violations: 999087.0864
Max relative difference among violations: 289288.5934676rrs    r"�test_simple_items_and_arrayz/TestArrayAssertLess.test_simple_items_and_arrayqs����H�H�@�6�4�6�
7��
�����!�Q�������!�Q���H�H�A�?�;�=�
>��
��G���]�]�>����<�1H�
I�	$����a��#�	$�)��
�]�]�>����<�1H�
I�	$����a��#�	$�	$�	$�	$��	$�	$�s�C>�"D
�>D�
Dc��tjgd��}tjd�}d}tjttj|���5|j||�ddd�d}tjttj|���5|j||�ddd�d}d}tjttj|���5|j||�ddd�d}tjttj|���5|j||�ddd�y#1swY��xYw#1swY��xYw#1swY�mxYw#1swYyxYw)	N)g0� Arg)\���.@g`f�@z�Mismatched elements: 1 / 3 (33.3%)
Max absolute difference among violations: 458802.
Max relative difference among violations: 5.23423917r]z�Mismatched elements: 2 / 3 (66.7%)
Max absolute difference among violations: 87654.
Max relative difference among violations: 5670.5626011rz�Mismatched elements: 3 / 3 (100%)
Max absolute difference among violations: 546456.
Max relative difference among violations: infz}Mismatched elements: 1 / 3 (33.3%)
Max absolute difference among violations: 0.
Max relative difference among violations: infr�rs    r"�test_zeroeszTestArrayAssertLess.test_zeroes�sB���H�H�)�*���H�H�V���O���]�]�>����<�1H�
I�	$����a��#�	$�'���]�]�>����<�1H�
I�	$����a��#�	$�
��H���]�]�>����<�1H�
I�	$����a��#�	$�H���]�]�>����<�1H�
I�	$����a��#�	$�	$�+	$�	$��	$�	$��	$�	$��	$�	$�s0�E�(E(�5E4�F�E%�(E1�4E=�F	c������tjtj��tjd��tjtj���j	���tt���fd��tt���fd��tt���fd��tt���fd��y)Nr)c�(���j���Srrr#s���r"r&z9TestArrayAssertLess.test_nan_noncompare.<locals>.<lambda>�r�r$c�(���j���Srrr#s���r"r&z9TestArrayAssertLess.test_nan_noncompare.<locals>.<lambda>�r�r$c�(���j���Srrr)s���r"r&z9TestArrayAssertLess.test_nan_noncompare.<locals>.<lambda>�r�r$c�(���j���Srrr)s���r"r&z9TestArrayAssertLess.test_nan_noncompare.<locals>.<lambda>�r�r$r,r-s`@@@r"�test_nan_noncomparez'TestArrayAssertLess.test_nan_noncompare�sp����x�x�������x�x��{���x�x���������$��%��n�&K�L��n�&K�L��n�&K�L��n�&K�Lr$c������tjgd���tjtj��tt���fd��tt���fd��tjddtjg��tt���fd��tt���fd��tjdd	tjg���j���tt���fd
��y)N)r�r�r�c�(���j���Srr�r$rres���r"r&z?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>�����d�.?�.?��4�.H�r$c�(���j���Srrr�s���r"r&z?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>�����d�.?�.?��a�.H�r$r�r�c�(���j���Srrr�s���r"r&z?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>�r�r$c�(���j���Srrr�s���r"r&z?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>�r�r$r�r�c�(���j���Srrrs���r"r&z?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>�r�r$)r,r-ror	r&r)rr$rerfs`@@@r"�test_nan_noncompare_arrayz-TestArrayAssertLess.test_nan_noncompare_array�s�����H�H�_�%���x�x�������n�&H�I��n�&H�I��H�H�c�3����'�(���n�&H�I��n�&H�I��H�H�c�3����'�(�����!�Q���n�&E�Fr$c�����tjd��tjtj���j����j����j���t	t
���fd��t	t
���fd��t	t
��fd��t	t
��fd��t	t
��fd��y)Nr)c�(���j���Srr�r*r%rs���r"r&z6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>�r�r$c�*���j���Srrr�s���r"r&z6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>�����d�.?�.?��t�e�.L�r$c�(���j���Srr�r*rs��r"r&z6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>�r�r$c�*���j���Srrr�s��r"r&z6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>�r�r$c�,���j���Srrr�s��r"r&z6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>�s���d�.?�.?����u�.M�r$)r,r-r�rr	r&)rr*r%s`@@r"�test_inf_comparez$TestArrayAssertLess.test_inf_compare�s�����x�x��{���x�x���������$��%����4�%��&����4�%��&��n�&K�L��n�&L�M��n�&K�L��n�&L�M��n�&M�Nr$c�����tjddtjg��tjtj��tt���fd��tt���fd��tt���fd��tt���fd��tt���fd���j���y)Nr�r�c�(���j���Srr�r*rres���r"r&z<TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>�r�r$c�(���j���Srrr�s���r"r&z<TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>�r�r$c�*���j���Srrr�s���r"r&z<TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>�s���d�.?�.?��D�5�.I�r$c�,���j���Srrr�s���r"r&z<TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>�s���d�.?�.?���T�E�.J�r$c�,���j���Srrr�s���r"r&z<TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>�s���d�.?�.?����r�.J�r$)r,r-r�r	r&r)rr*res`@@r"�test_inf_compare_arrayz*TestArrayAssertLess.test_inf_compare_array�sw����H�H�c�3����'�(���x�x�������n�&H�I��n�&H�I��n�&I�J��n�&J�K��n�&J�K����4�%��#r$c�"�tjd�}tjd�}|j||�t	j
t�5|j||d��ddd�tj||j�}|j||�t	j
t�5|j||jtj�d��ddd�y#1swY��xYw#1swYyxYw�z)Test the behavior of the `strict` option.r3rFTr�N)r,�zerosrxrr_r`r&�broadcast_tor��astyper�rs   r"�test_strictzTestArrayAssertLess.test_strict�s����H�H�Q�K���G�G�B�K�����!�Q��
�]�]�>�
*�	1����a��4��0�	1��O�O�A�q�w�w�'�����!�Q��
�]�]�>�
*�	D����a����"�*�*�!5�d��C�	D�	D�		1�	1��	D�	D�s�C9�>2D�9D�DN)rCrDrErJr�r�r�r�r�r�r�r�r�r�r�rFr$r"r�r�$sE��.�$�*
G�G� G�($�:$�>M�G�"O�	$�
Dr$r�c�$�eZdZd�Zd�Zd�Zd�Zy)�	TestWarnsc�*�d�}tjdjdd}tt	t
|�d�tjdj}t
tt|�ttd�d�d�t||d�y)Nc�.�tjd�y)N�yor3��warnings�warnrFr$r"�fzTestWarns.test_warn.<locals>.f�s���M�M�$��r$r�r3c��|SrrF�res r"r&z%TestWarns.test_warn.<locals>.<lambda>�s��!�r$r)�.assert_warns does not preserver warnings state)	�sys�modules�filtersrr
�UserWarningr	r&r)rr��before_filters�
after_filterss    r"�	test_warnzTestWarns.test_warn�sx��	����Z�0�8�8��;���\�+�q�1�1�5����J�/�7�7�
��n�&8�!�<��'��Q�7��;�	�^�]�E�	Gr$c�0�tjdjdd}tt�5tjd�ddd�tjdj}d�}tt|�t||d�y#1swY�GxYw)Nr�r�c�l�t�5tjd�ddd�y#1swYyxYw�Nr�)rr�r�rFr$r"�no_warningsz3TestWarns.test_context_manager.<locals>.no_warningss)��#�%�
$��
�
�d�#�
$�
$�
$�s�*�3r�)
r�r�r�r
r�r�r�r	r&r)rr�r�r�s    r"�test_context_managerzTestWarns.test_context_manager�sy�����Z�0�8�8��;��
�+�
&�	 ��M�M�$��	 ����J�/�7�7�
�	$�	�n�k�2��^�]�E�	G�	 �	 �s�B�Bc�j�d
d�}tt|d��dk(sJ�tjt�5}ttd��5tjdt�ddd�ddd�dt�vsJ�dt|�vsJ�tjt�5}ttd�	�5tjdt�ddd�ddd�dt|�vsJ�dt|�vsJ�y#1swY��xYw#1swY��xYw#1swY�HxYw#1swY�LxYw)Nc�6�tjd�||zSr�r�)r r!s  r"r�zTestWarns.test_args.<locals>.fs���M�M�$���q�5�Lr$rw�r!�Ar]�Br
zpytest.warns)�wrong)rr))r
r�r_r`�RuntimeErrorr�r�ra)rr��excs   r"�	test_argszTestWarns.test_argss��	��K��b�1�R�7�7�7�
�]�]�<�
(�	0�C��k��5�
0��
�
�c�;�/�
0�	0���S��)�)�)���S��)�)�)�
�]�]�<�
(�	0�C��k��5�
0��
�
�c�;�/�
0�	0���S��)�)�)��S��X�-�-�-�
0�
0��	0�	0��
0�
0��	0�	0�sG�D�D�"D�)D)�;D�D)�D	�
D�D�D&	�"D)�)D2c���d�}d}tj�5tjdt�	t	t
|�d}ddd�|rt
d��y#t$rY�!wxYw#1swY�&xYw)Nc�8�tjdt�yr�)r�r��DeprecationWarningrFr$r"r�z,TestWarns.test_warn_wrong_warning.<locals>.f$s���M�M�$� 2�3r$F�errorTz#wrong warning caught by assert_warn)r��catch_warnings�simplefilterr
r
r�r&)rr��faileds   r"�test_warn_wrong_warningz!TestWarns.test_warn_wrong_warning#s~��	4���
�
$�
$�
&�	��!�!�'�+=�>�
��[�!�,���	�� �!F�G�G���&�
��
��
	�	�s(�A-�A�	A*�'A-�)A*�*A-�-A6N)rCrDrEr�r�rrrFr$r"r�r��s��G� 
G�.�*Hr$r�c�H�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zy)�TestAssertAllclosec�<�d}d}t||d��ttt||�d}tjttj|���5t||�ddd�d}d}tjttj|���5t||�ddd�d	}tjttj|���5t||�ddd�tj||||g�}tj||||g�}t||d��ttt||�|d
z|d<t||�ttt||d��td
dd��tttdd
d��tj||||g�}tj||||g�}d}tjttj|���5t||�ddd�d}tjttj|���5t||�ddd�y#1swY���xYw#1swY���xYw#1swY���xYw#1swY�vxYw#1swYyxYw)Ng����MbP?g��&�.>r)��atolz�Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 0.001
Max relative difference among violations: 999999.r]rz�Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.e-09
Max relative difference among violations: infzMismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.e-09
Max relative difference among violations: 1.g�1��?r
)�rtolr�r�g�?z~Mismatched elements: 1 / 4 (25%)
Max absolute difference among violations: 0.001
Max relative difference among violations: infz}Mismatched elements: 1 / 4 (25%)
Max absolute difference among violations: 0.001
Max relative difference among violations: 1.)	rr	r&r_r`rcrdr,r-)rrerfrirJr r!rSs        r"rzTestAssertAllclose.test_simple7s*��������1�1�%��n�o�q�!�<�L���]�]�>����<�1H�
I�	"��A�q�!�	"�
��H���]�]�>����<�1H�
I�	"��A�q�!�	"�G���]�]�>����<�1H�
I�	"��A�q�!�	"�
�H�H�a��A�q�\�"���H�H�a��A�q�\�"����1�1�%��n�o�q�!�<��X���"����1���n�o�q�!�$�G���2�C�(��n�o�r�1�3�G��H�H�a��A�q�\�"���H�H�a��A�q�\�"��H���]�]�>����<�1H�
I�	"��A�q�!�	"�G���]�]�>����<�1H�
I�	"��A�q�!�	"�	"�Q	"�	"��	"�	"��	"�	"��*	"�	"��	"�	"�s<�
I� 
I,�%
I9�
J�	
J�I)�,I6�9J�J�Jc��tjtjtj�jgtj��}t||�y)Nr:)r,r-�iinfo�int_�minrr=s  r"�test_min_intzTestAssertAllclose.test_min_intls6���H�H�b�h�h�r�w�w�'�+�+�,�B�G�G�<����1�r$c��tjgd��}tjgd��}d}tjttj|���5t||�ddd�y#1swYyxYw)N)r)r)r)r))r)r)r)r*zzMismatched elements: 1 / 4 (25%)
Max absolute difference among violations: 1
Max relative difference among violations: 0.5r]�r,r-r_r`r&rcrdrr�s    r"�test_report_fail_percentagez.TestAssertAllclose.test_report_fail_percentageqs^���H�H�\�"���H�H�\�"��H���]�]�>����<�1H�
I�	"��A�q�!�	"�	"�	"���
A5�5A>c��tjtjg�}tjtjg�}t||d��y)NT��	equal_nan)r,r-rorrs   r"�test_equal_nanz!TestAssertAllclose.test_equal_nan{s6���H�H�b�f�f�X����H�H�b�f�f�X�����1��-r$c���tjtjg�}tjtjg�}ttt
||d��y)NFr )r,r-ror	r&rrs   r"�test_not_equal_nanz%TestAssertAllclose.test_not_equal_nan�s:���H�H�b�f�f�X����H�H�b�f�f�X����n�o�q�!�u�Mr$c���tjtjg�}tjtjg�}t||�t	||�t||�t
||�yr)r,r-rorrrrrs   r"�test_equal_nan_defaultz)TestAssertAllclose.test_equal_nan_default�sT��
�H�H�b�f�f�X����H�H�b�f�f�X����1�a� �!�!�Q�'��!�Q����1�r$c��tjddg�}tjddg�}d}tjttj|���5t||�ddd�y#1swYyxYw)Nrr)r*z-Max relative difference among violations: 0.5r]rr�s    r"�test_report_max_relative_errorz1TestAssertAllclose.test_report_max_relative_error�sa���H�H�a��V����H�H�a��V���F��
�]�]�>����<�1H�
I�	"��A�q�!�	"�	"�	"�rc�P�tjgd�gd��}t||�y)N)r)r*r3r�zm8[ns]r:)r,r-rr=s  r"�test_timedeltaz!TestAssertAllclose.test_timedelta�s ���H�H�&�'�x�8����1�r$c��tjgd�d��}tjgd�d��}d}tjttj|���5t||d��d	d	d	�y	#1swYy	xYw)
zUCheck the message is formatted correctly when overflow can occur
           (gh21768))rr)r��uint8r:)r4r4r4z+Max absolute difference among violations: 4r]r3rN)r,�asarrayr_r`r&rcrdrrs    r"�test_error_message_unsignedz.TestAssertAllclose.test_error_message_unsigned�sa��
�J�J�y��0���J�J�y��0��D��
�]�]�>����<�1H�
I�	*��A�q�q�)�	*�	*�	*�s�#A;�;Bc��tjd�}tjd�}t||�tjt
�5t||d��ddd�t||�tjt
�5t||j
tj�d��ddd�y#1swY�cxYw#1swYyxYwr�)r,rxrr_r`r&r�r�rs   r"r�zTestAssertAllclose.test_strict�s����G�G�A�J���G�G�B�K����1��
�]�]�>�
*�	/��A�q��.�	/���1��
�]�]�>�
*�	B��A�q�x�x��
�
�3�D�A�	B�	B�	/�	/��	B�	B�s�C�,C
�C
�
CN)
rCrDrErrrr"r$r&r(r*r.r�rFr$r"rr5s7��3"�j�
"�.�N�
	�"��
*�	Br$rc�Z�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zy)�TestArrayAlmostEqualNulpc��d}tjdddtj��}d|z}tj||f}tj|j
�j}|||z|zdzz}t|||�tj|j
�j}|||z|zdzz
}t|||�y�Nr���rw�2r:r�r��	r,�linspace�float64�r_�finfor;�epsr�epsneg�r�nulprer;rfr<s      r"�test_float64_passz*TestArrayAlmostEqualNulp.test_float64_pass�s������K�K��R��2�:�:�6����E���E�E�1�"�a�%�L���h�h�q�w�w��#�#��
��#��d�
�2�
���&�q�!�T�2����!�'�'�"�)�)��
��&���
�b� � ��&�q�!�T�2r$c���d}tjdddtj��}d|z}tj||f}tj|j
�j}|||z|zdzz}ttt|||�tj|j
�j}|||z|zdzz
}ttt|||�yr3�r,r7r8r9r:r;r;r	r&rr<r=s      r"�test_float64_failz*TestArrayAlmostEqualNulp.test_float64_fail��������K�K��R��2�:�:�6����E���E�E�1�"�a�%�L���h�h�q�w�w��#�#��
��#��d�
�2�
����n�&D���D�	"����!�'�'�"�)�)��
��&���
�b� � ���n�&D���D�	"r$c�n�tjd�}tjtjtj��jtj�}||z}|jtj�}|jtj�}t
||d�y)Nl��r:r)r,�uint64r-ror8r�r)r�offset�nan1_i64�nan2_i64�nan1_f64�nan2_f64s      r"�test_float64_ignore_nanz0TestArrayAlmostEqualNulp.test_float64_ignore_nan�ss�����:�&���8�8�B�F�F�"�*�*�5�:�:�2�9�9�E���f�$���=�=����,���=�=����,���X�x��3r$c��d}tjdddtj��}d|z}tj||f}tj|j
�j}|||z|zdzz}t|||�tj|j
�j}|||z|zdzz
}t|||�yr3�	r,r7r�r9r:r;r;rr<r=s      r"�test_float32_passz*TestArrayAlmostEqualNulp.test_float32_pass�s������K�K��R��2�:�:�6����E���E�E�1�"�a�%�L���h�h�q�w�w��#�#��
��#��d�
�2�
���&�q�!�T�2����!�'�'�"�)�)��
��&���
�b� � ��&�q�!�T�2r$c���d}tjdddtj��}d|z}tj||f}tj|j
�j}|||z|zdzz}ttt|||�tj|j
�j}|||z|zdzz
}ttt|||�yr3�r,r7r�r9r:r;r;r	r&rr<r=s      r"�test_float32_failz*TestArrayAlmostEqualNulp.test_float32_fail�rCr$c�n�tjd�}tjtjtj��jtj�}||z}|jtj�}|jtj�}t
||d�y)Ni��r:r)r,�uint32r-ror�r�r)rrF�nan1_i32�nan2_i32�nan1_f32�nan2_f32s      r"�test_float32_ignore_nanz0TestArrayAlmostEqualNulp.test_float32_ignore_nanss�����6�"���8�8�B�F�F�"�*�*�5�:�:�2�9�9�E���f�$���=�=����,���=�=����,���X�x��3r$c��d}tjdddtj��}d|z}tj||f}tj|j
�j}|||z|zdzz}t|||�tj|j
�j}|||z|zdzz
}t|||�y�Nr���r4r�r:r�)	r,r7�float16r9r:r;r;rr<r=s      r"�test_float16_passz*TestArrayAlmostEqualNulp.test_float16_passs������K�K��A�r����4����E���E�E�1�"�a�%�L���h�h�q�w�w��#�#��
��#��d�
�2�
���&�q�!�T�2����!�'�'�"�)�)��
��&���
�b� � ��&�q�!�T�2r$c���d}tjdddtj��}d|z}tj||f}tj|j
�j}|||z|zdzz}ttt|||�tj|j
�j}|||z|zdzz
}ttt|||�yrZ)r,r7r\r9r:r;r;r	r&rr<r=s      r"�test_float16_failz*TestArrayAlmostEqualNulp.test_float16_fails������K�K��A�r����4����E���E�E�1�"�a�%�L���h�h�q�w�w��#�#��
��#��d�
�2�
����n�&D���D�	"����!�'�'�"�)�)��
��&���
�b� � ���n�&D���D�	"r$c�n�tjd�}tjtjtj��jtj�}||z}|jtj�}|jtj�}t
||d�y)N�r:r)r,�uint16r-ror\r�r)rrF�nan1_i16�nan2_i16�nan1_f16�nan2_f16s      r"�test_float16_ignore_nanz0TestArrayAlmostEqualNulp.test_float16_ignore_nan-sr�����4����8�8�B�F�F�"�*�*�5�:�:�2�9�9�E���f�$���=�=����,���=�=����,���X�x��3r$c��d}tjdddtj��}d|z}tj||f}||dzz}tj|j
�j}|||z|zdzz}t|||dzz|�t|||dzz|�|||z|zd	zz}t|||dzz|�tj|j
�j}|||z|zdzz
}t|||dzz|�t|||dzz|�|||z|zd	zz
}t|||dzz|�y�
Nrr4rwr5r:r���?r�r~r6�rr>re�xir;rfr<s       r"�test_complex128_passz-TestArrayAlmostEqualNulp.test_complex128_pass8sL�����K�K��R��2�:�:�6����E���E�E�1�"�a�%�L��
��2��X���h�h�q�w�w��#�#��
��#��d�
�2�
���&�r�1�q��t�8�T�:�&�r�1�q��t�8�T�:�
��#��d�
�2�
���&�r�1�q��t�8�T�:����!�'�'�"�)�)��
��&���
�b� � ��&�r�1�q��t�8�T�:�&�r�1�q��t�8�T�:�
��&���
�b� � ��&�r�1�q��t�8�T�:r$c��d}tjdddtj��}d|z}tj||f}||dzz}tj|j
�j}|||z|zdzz}ttt|||dzz|�ttt|||dzz|�|||z|zz}ttt|||dzz|�tj|j
�j}|||z|zdzz
}ttt|||dzz|�ttt|||dzz|�|||z|zz
}ttt|||dzz|�y�	Nrr4rwr5r:r�rjr�rArks       r"�test_complex128_failz-TestArrayAlmostEqualNulp.test_complex128_failOst�����K�K��R��2�:�:�6����E���E�E�1�"�a�%�L��
��2��X���h�h�q�w�w��#�#��
��#��d�
�2�
����n�&D��!�a��d�(�D�	*��n�&D��!�a��d�(�D�	*�
��#��d�
�N���n�&D��!�a��d�(�D�	*����!�'�'�"�)�)��
��&���
�b� � ���n�&D��!�a��d�(�D�	*��n�&D��!�a��d�(�D�	*�
��&���
����n�&D��!�a��d�(�D�	*r$c��d}tjdddtj��}d|z}tj||f}||dzz}tj|j
�j}|||z|zdzz}t|||dzz|�t|||dzz|�|||z|zd	zz}t|||dzz|�tj|j
�j}|||z|zdzz
}t|||dzz|�t|||dzz|�|||z|zd	zz
}t|||dzz|�yrirMrks       r"�test_complex64_passz,TestArrayAlmostEqualNulp.test_complex64_passlsJ�����K�K��R��2�:�:�6����E���E�E�1�"�a�%�L��
��2��X���h�h�q�w�w��#�#��
��#��d�
�2�
���&�r�1�q��t�8�T�:�&�r�1�q��t�8�T�:�
��#��d�
�2�
���&�r�1�q��t�8�T�:����!�'�'�"�)�)��
��&���
�b� � ��&�r�1�q��t�8�T�:�&�r�1�q��t�8�T�:�
��&���
�b� � ��&�r�1�q��t�8�T�:r$c��d}tjdddtj��}d|z}tj||f}||dzz}tj|j
�j}|||z|zdzz}ttt|||dzz|�ttt|||dzz|�|||z|zz}ttt|||dzz|�tj|j
�j}|||z|zdzz
}ttt|||dzz|�ttt|||dzz|�|||z|zz
}ttt|||dzz|�yrorPrks       r"�test_complex64_failz,TestArrayAlmostEqualNulp.test_complex64_fail�sr�����K�K��R��2�:�:�6����E���E�E�1�"�a�%�L��
��2��X���h�h�q�w�w��#�#��
��#��d�
�2�
����n�&D��!�a��d�(�D�	*��n�&D��!�a��d�(�D�	*�
��#��d�
�N���n�&D��!�a��d�(�D�	*����!�'�'�"�)�)��
��&���
�b� � ���n�&D��!�a��d�(�D�	*��n�&D��!�a��d�(�D�	*�
��&���
����n�&D��!�a��d�(�D�	*r$N)rCrDrEr?rBrKrNrQrXr]r_rgrmrprrrtrFr$r"r1r1�sC��3�$"� 	4�3�"� 	4�3�"� 	4�;�.*�:;�**r$r1c�*�eZdZd�Zd�Zd�Zd�Zd�Zy)�TestULPc�^�tjjd�}t||d��y)Nr�r��maxulp)r,�random�randnr)rres  r"�
test_equalzTestULP.test_equal�s ���I�I�O�O�B����Q��!�,r$c�h�tjd�jtj�}|dtjjd�jtj�zz
}tjtj�j}t|||zd��y)Nr��{�G�z�?rwrx)	r,rxr�r�rzr{r:r;r�rrer;s   r"�test_singlezTestULP.test_single�sq���G�G�B�K���r�z�z�*��	�T�B�I�I�O�O�B�'�.�.�r�z�z�:�
:�:���h�h�r�z�z�"�&�&���Q��#��b�1r$c�h�tjd�jtj�}|dtjjd�jtj�zz
}tjtj�j}t|||zd��y)Nr�r~��rx)	r,rxr�r8rzr{r:r;rrs   r"�test_doublezTestULP.test_double�sq���G�G�B�K���r�z�z�*��	�T�B�I�I�O�O�B�'�.�.�r�z�z�:�
:�:���h�h�r�z�z�"�&�&���Q��#��c�2r$c�6�tjtjfD]v}tjtjg�j|�}tjtj|�jg�}t||d���xy)Nr�rx)	r,r�r8r-r�r�r:�maxr)r�dtr��bigs    r"r4zTestULP.test_inf�sh���:�:�r�z�z�*�	7�B��(�(�B�F�F�8�$�+�+�B�/�C��(�(�B�H�H�R�L�,�,�-�.�C� ��c�#�6�	7r$c���������tjtjfD�]�}|tjk(rd�nd�tjtjg�j|��tjtjg�j|��tjtj|�jg��tjtj|�jg��tjdg�j|��tjdg�j|��tt���fd��tt���fd��tt���fd��tt���fd��tt���fd	�����y)
Ng��.Ag��mBr�g�c� ��t�����S�Nrx�r)r�ryros���r"r&z"TestULP.test_nan.<locals>.<lambda>�����"6�s�C�>D�#F�r$c� ��t�����Sr�r�)r�ryros���r"r&z"TestULP.test_nan.<locals>.<lambda>�r�r$c� ��t�����Sr�r�)ryro�tinys���r"r&z"TestULP.test_nan.<locals>.<lambda>�����"6�s�D�>D�#F�r$c� ��t�����Sr�r�)ryro�zeros���r"r&z"TestULP.test_nan.<locals>.<lambda>�r�r$c� ��t�����Sr�r�)ryro�nzeros���r"r&z"TestULP.test_nan.<locals>.<lambda>�s���"6�s�E�>D�#F�r$)r,r�r8r-r�r�ror:r�r�r	r&)	rr�r�r�ryror�r�r�s	  @@@@@@@r"r.zTestULP.test_nan�sE����:�:�r�z�z�*�	G�B��R�Z�Z�������(�(�B�F�F�8�$�+�+�B�/�C��(�(�B�F�F�8�$�+�+�B�/�C��(�(�B�H�H�R�L�,�,�-�.�C��8�8�R�X�X�b�\�.�.�/�0�D��8�8�S�E�?�)�)�"�-�D��H�H�d�V�$�+�+�B�/�E��.�F�
G�
�.�F�
G�
�.�F�
G�
�.�F�
G�
�.�F�
G�/	Gr$N)rCrDrEr|r�r�r4r.rFr$r"rvrv�s��-�2�3�7�Gr$rvc��eZdZd�Zd�Zy)�TestStringEqualc��tdd�tdd�tjt�5}tdd�ddd�t	j
�}t
|d�ttd��y#1swY�<xYw)N�hellozhello
multilinezfoo
barz	hello
barz%Differences in strings:
- foo
+ helloc��tdd�S)NrTr��rrFr$r"r&z-TestStringEqual.test_simple.<locals>.<lambda>�s��1�%��A�r$)rr_r`r&rarbrr	)rrgrhs   r"rzTestStringEqual.test_simple�sl���G�W�-��.�0B�C�
�]�]�>�
*�	:�h��
�L�9�	:��(�.�.�!���S�C�D��n�A�	C�	:�	:�s�
A:�:Bc�>�tdd�ttd��y)Nza+*bc��tdd�S)N�aaaza+br�rFr$r"r&z,TestStringEqual.test_regex.<locals>.<lambda>�s��1�%��?�r$)rr	r&rAs r"�
test_regexzTestStringEqual.test_regex�s���F�F�+��n�?�	Ar$N)rCrDrErr�rFr$r"r�r��s��
C�Ar$r�c��	|j}t|�}d|vr|dz}t||�y#t$ri}Y�.wxYw)N�versionr))�__warningregistry__�AttributeError�lenr)�mod�n_in_context�	mod_warns�	num_warnss    r"�assert_warn_len_equalr��sR��
��+�+�	��I��I��I��	�Q��	���L�)��#���	��s�/�=�=c�|�Gd�d�}|�}t|d��Gd�d�}|�}t|d��y)Nc��eZdZy)�/test_warn_len_equal_call_scenarios.<locals>.modN)rCrDrErFr$r"r�r�s��r$r�r)r�r�c��eZdZd�Zy)r�c��ddd�|_y)Nr)r*��warning1�warning2)r�rAs r"�__init__z8test_warn_len_equal_call_scenarios.<locals>.mod.__init__s��45�45�(7�D�$r$N)rCrDrEr�rFr$r"r�z/test_warn_len_equal_call_scenarios.<locals>.mods��	7r$r*)r�)r��mod_insts  r"�"test_warn_len_equal_call_scenariosr�sB��
�
��u�H��h�'(�*�
7�7�
�u�H��h�'(�*r$c��tjt}	|jj	�|S#t
$rY|SwxYwr)r�r�rCr��clearr���my_mods r"�_get_fresh_modr�sI��
�[�[��
"�F�
��"�"�(�(�*�
�M��	�
�	
��M�	
�s�5�	A�Ac�$�t�}tt|di�i�t|g��5t	j
d�t	jd�ddd�t|ji�t�5t	j
d�t	jd�ddd�t|d�ddd�|_t|g��5t	j
d�t	jd	�ddd�t|d�t�5t	j
d�t	jd	�ddd�t|d�y#1swY��	xYw#1swY��xYw#1swY�xxYw#1swY�;xYw)
Nr�)r��ignore�Some warningrr)r*r�zAnother warning)	r�r�getattrrr�r
r�r�r�r�s r"�test_clear_and_catch_warningsr�(sJ��
�
�F����!6��;�R�@�	!�6�(�	3�&����h�'��
�
�n�%�&���+�+�R�0�
"�	#�&����h�'��
�
�n�%�&��&�!�$�/0�./�"1�F��
"�6�(�	3�)����h�'��
�
�'�(�)��&�!�$�
"�	#�)����h�'��
�
�'�(�)��&�!�$�3&�&��&�&��)�)��)�)�s/�+E!�+E.�+E:�!+F�!E+�.E7�:F�Fc��t�}tt|di�i�d�}t|d�t	�5}|jt�|jtjj��tjd�|�ddd�ttj�d�t|jdjj dd�t|d�t	�}|j|��|5tjd�ddd�t|d�|j|��|5tjd�ddd�t|d�t	�5tj"d�tjd�ddd�t|d�y#1swY��5xYw#1swY��xYw#1swY�xxYw#1swY�;xYw)Nr�c�:�d�}tj|ddg�y)Nc�4�tjdd��|S)NzSome warning 2r*��
stacklevelr���arrs r"r�zFtest_suppress_warnings_module.<locals>.warn_other_module.<locals>.warnPs���M�M�*�q�9��Jr$r�r,�apply_along_axis�r�s r"�warn_other_modulez8test_suppress_warnings_module.<locals>.warn_other_moduleM���	�	���D�!�a�S�)r$r��moduler�r)r�)r�rr�r�r�recordr��filterr,�lib�_shape_base_implr�r�r��log�messager�r
)r�r��sups   r"�test_suppress_warnings_moduler�Hs���
�
�F����!6��;�R�@�*��&�!�$�	�	����
�
�;��	�
�
�"�&�&�1�1�
�2��
�
�n�%���
���S�W�W��q�!�������#�#�(�(��+�^�<��&�!�$�
�
�C��J�J�f�J��	�&��
�
�n�%�&��&�!�$��J�J�f�J��	�&��
�
�n�%�&��&�!�$�
�	�&����h�'��
�
�n�%�&��&�!�$�9���&�&��
&�&��
&�&�s0�AG
�G�G#�
+G/�
G�G �#G,�/G8c���t�}tt|di�i�t�5}|j	t
�t
jd�ddd�t|d�t�}|j	t
�|5t
jd�ddd�t|d�|j	|��|5t
jd�ddd�t|d�t�5t
jd�t
jd�ddd�t|d�y#1swY��xYw#1swY��xYw#1swY�wxYw#1swY�:xYw)Nr�r�rr�r�)
r�rr�rr�r�r�r�r�r
)r�r�s  r"�test_suppress_warnings_typer�vs"��
�
�F����!6��;�R�@�
�	�&���
�
�;���
�
�n�%�&��&�!�$�
�
�C��J�J�{��	�&��
�
�n�%�&��&�!�$��J�J�f�J��	�&��
�
�n�%�&��&�!�$�
�	�&����h�'��
�
�n�%�&��&�!�$�'&�&��&�&��
&�&��
&�&�s/�+D>�E
�
E�>+E"�>E�
E�E�"E+c�,�t�}|jt�|d��}tjd��5}tj
d�|t�|t�tt|�d�ddd�y#1swYyxYw)Nc�0�tjd|�y)Nr�r�)�categorys r"r�z7test_suppress_warnings_decorate_no_record.<locals>.warn�s���
�
�n�h�/r$T)r��alwaysr))	rr�r�r�rr
�RuntimeWarningrr�)r�r��ws   r"�)test_suppress_warnings_decorate_no_recordr��s{��
�
�C��J�J�{���0�	�0�
�	 �	 ��	-� �����h�'��[���^���S��V�Q��	 � � �s�AB
�
Bc�n�t�}|j�}|5|jd��}|jd��tjd�tjd�tjd�tt
|j�d�tt
|�d�tt
|�d�t|djjdd�ddd�|5|jd��}|jd��tjd�tjd�tjd�tt
|j�d�tt
|�d�tt
|�d�t|djjdd�ddd�t�5}|j�t�5}|jd��tjd�tjd�tt
|j�d�ddd�tt
|j�d�ddd�y#1swY���xYw#1swY��xYw#1swY�JxYw#1swYyxYw)NzSome other warning 2)r�r��Some other warningr*r)r)
rr�r�r�r�rr�r�r�r�)r��log1�log2�sup2s    r"�test_suppress_warnings_recordr��s��
�
�C��:�:�<�D�	�
F��z�z�"8�z�9���
�
�>�
�*��
�
�n�%��
�
�*�+��
�
�,�-��S����\�1�%��S��Y��"��S��Y��"��T�!�W�_�_�)�)�!�,�.D�E�
F�

�
F��z�z�"8�z�9���
�
�>�
�*��
�
�n�%��
�
�*�+��
�
�,�-��S����\�1�%��S��Y��"��S��Y��"��T�!�W�_�_�)�)�!�,�.D�E�
F�
�	�&���
�
��
�
 �	+�D��K�K��K�/��M�M�.�)��M�M�.�/���T�X�X���*�		+�
	�S����\�1�%�&�&�5
F�
F��
F�
F��	+�	+��&�&�s>�CJ�:CJ�J+�:AJ�'J+�J�J�J(	�$J+�+J4c�L�d�}t�5}|j�td�5td�D]}tjd��	ddd�tt
|j�d�ddd�t�5}|j�td�5td�D],}tjd�tjd��.	ddd�tt
|j�d�ddd�t�5}|j�td�5td�D]3}tjd�tjd�|��5	ddd�tt
|j�d�ddd�t�5}|j�td�5td�D]3}tjd�tjd�|��5	ddd�tt
|j�d�ddd�y#1swY���xYw#1swY���xYw#1swY��|xYw#1swY��bxYw#1swY��xYw#1swY��xYw#1swY�}xYw#1swYyxYw)	Nc�:�d�}tj|ddg�y)Nc�4�tjdd��|S)Nr�r*r�r�r�s r"r�zJtest_suppress_warnings_forwarding.<locals>.warn_other_module.<locals>.warn�s���M�M�.�Q�7��Jr$rr�r�s r"r�z<test_suppress_warnings_forwarding.<locals>.warn_other_module�r�r$r�r*r��locationr��oncer�)rr��ranger�r�rr�r�)r�r��is   r"�!test_suppress_warnings_forwardingr��s��*�
�	�&���
�
��
�x�
(�	.��1�X�
.���
�
�n�-�
.�	.�	�S����\�1�%�
&�
�	�&���
�
��
�z�
*�	.��1�X�
.���
�
�n�-��
�
�n�-�
.�	.�
	�S����\�1�%�&�
�	�&���
�
��
�x�
(�	$��1�X�
$���
�
�n�-��
�
�n�-�!�#�
$�	$�	�S����\�1�%�&�
�	�&���
�
��
�v�
&�	$��1�X�
$���
�
�n�-��
�
�2�3�!�#�
$�	$�	�S����\�1�%�&�&�3	.�	.��&�&��	.�	.��&�&��	$�	$��&�&��	$�	$��&�&�s��I�&I�'I�
I)�&;I�"'I)�J�7AI6�:'J�3J�AJ�'J�I	�I�I�I&	�!I)�)I3�6I?	�;J�J�J	�J�J#c���t�5}tjj|d�}t	|d�5	ddd�ddd�ttjj
��d}	t�5}t�#1swY�NxYw#1swY�RxYw#1swYnxYwn#t$rd}YnwxYwt|�ttjj
|��y)N�tmpr�FT)r�os�path�join�openr�isdir�
ValueError)�tdir�fpath�raiseds   r"�test_tempdirr��s���	���d������T�5�)��
�%��
�	��	������
�
�d�#�#�$�
�F��
�Y�	�$���	�	�����	�	��	���������F�O�����
�
�d�#�#�$sE�-B�B�B�6
B,�B�B	�B�B�B(�$B,�,B:�9B:c��t�5}t|d�5	ddd�ddd�ttjj��d}	t�5}t�#1swY�NxYw#1swY�RxYw#1swYnxYwn#t$rd}YnwxYwt|�ttjj|��y)Nr�FT)rr�rr�r��isfiler�)r�r�s  r"�
test_temppathr�	s���	���u�
�%��
�	��	��������u�%�%�&�
�F��
�Z�	�5���	�	�����	�	��	���������F�O�������u�%�%�&sE�
A3�A'�A3�
B� A?�'A0	�,A3�3A<�?B�B�B�Bc�,�eZdZejefZy)�my_cacwN)rCrDrEr�r��
class_modulesrFr$r"r�r�s���[�[��*�,�Mr$r�c���t�}t�5tjd�tjd�ddd�t|ji�y#1swY� xYw)Nr�r�)r�r�r�r
r�rr�r�s r"�%test_clear_and_catch_warnings_inheritr�sP��
�
�F�	��&����h�'��
�
�n�%�&���+�+�R�0�&�&�s�+A�A(zPython lacks refcounts)�reasonc�T�eZdZdZd�Zd�Zejjd��Z	y)�TestAssertNoGcCyclesz Test assert_no_gc_cycles c�l�d�}t�5|�ddd�t|�y#1swY�xYw)Nc�,�g}|jg�|Sr��appendrs r"�no_cyclez2TestAssertNoGcCycles.test_passes.<locals>.no_cycle,s���A�
�H�H�R�L��Hr$)r)rrs  r"�test_passesz TestAssertNoGcCycles.test_passes+s3��	�
!�
"�	��J�	�	�H�%�	�	�s�*�3c��d�}tt�5t�5|�ddd�ddd�tt�5t|�ddd�y#1swY�5xYw#1swY�9xYw#1swYyxYw)Nc�N�g}|j|�|j|�|Srr)r s r"�
make_cyclez5TestAssertNoGcCycles.test_asserts.<locals>.make_cycle7s"���A�
�H�H�Q�K�
�H�H�Q�K��Hr$)r	r&r)rr
s  r"�test_assertsz!TestAssertNoGcCycles.test_asserts6sr��	��>�
*�	�$�&�
���
�	��>�
*�	,��
�+�	,�	,�
�
��	�	��	,�	,�s-�A&�A�A&�A2�A#	�A&�&A/�2A;c�4��G�fd�d��	tj���}	tt�5t	d��ddd�d�_y#1swY�xYw#t
$r |��t
jd��Y�<wxYw#d�_wxYw)z�
        Test that in cases where the garbage cannot be collected, we raise an
        error, instead of hanging forever trying to clear it.
        c�&��eZdZdZdZd�Z�fd�Zy)�<TestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDelz�
            An object that not only contains a reference cycle, but creates new
            cycles whenever it's garbage-collected and its __del__ runs
            Tc��||_yr)�cyclerAs r"r�zETestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDel.__init__Rs	��!��
r$c�<��d|_�jr��yyr)rr
)r�ReferenceCycleInDels �r"�__del__zDTestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDel.__del__Us ���!��
�&�1�1�(�)�2r$N)rCrDrE�__doc__r
r�r)rs�r"rrKs���
��J�
"�
*r$rc��yrrFrFr$r"r&z1TestAssertNoGcCycles.test_fails.<locals>.<lambda>cs�r$Nz*GC does not call __del__ on cyclic objectsF)	�weakref�refr	rrr&r_�skipr
)rr�rs  @r"�
test_failszTestAssertNoGcCycles.test_failsDs����	*�	*�&	3����/�1�2�A�	
�"�<�0�6�'��5�6�.3��*�6�6��"�
��3�?��K�K� L�M��#�
��.3��*�s?�B�A"�
A�A"�A�A"�"&B�B�
B�B�	BN)
rCrDrErrrr_�mark�slowrrFr$r"rr's-��$�	&�,��[�[���(3��(3r$r�assert_funcc���|dd�|dd��d}tjt|��5|dd�ddd�tjt|��5|dd��ddd�d}tjt|��5|dd��ddd�tjt|��5|dd��ddd�d	}tjt|��5tjt
|��5|dd�
�|ddd��ddd�ddd�y#1swY��xYw#1swY��xYw#1swY��xYw#1swY��xYw#1swY�BxYw#1swYyxYw)Nr))�actual�desiredzArrays are not...r]r*zUse of keyword argument...)rer)rfz#...got multiple values for argumentr�)r_r`r&�warnsr
ry)r�assert_message�dep_message�type_messages    r"�test_xy_renamer$psC����1���q�!�$�(�N�	���~�^�	<���A�q���	���~�^�	<�)��1�a�(�)�/�K�	���(��	<�$��a��#�$�	���(��	<���A����9�L�
�,�,�)��
=��
�-�-�	��
6���A����A�q�A��������)�)��$�$����������sS�
D/�D;�E�<E�,E+�E�E+�/D8�;E�E�E�E(	�$E+�+E4)Br�r�r�r�r_rrc�numpyr,�numpy._core._multiarray_umath�_core�_multiarray_umathr�
numpy.testingrrrrrrr	r
rrr
rrrrrrrrrrrrHr�r�rr[r�r�r�rr1rvr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�skipifr�parametrizer$rFr$r"�<module>r,s����
�	��
��	��+�+�������+/�+/�\\1�\�\1�~*�*�Z\)��\)�~u �<�u �pP �l�P �f(M�(M�VFD�FD�REH�EH�PB�B�Dc*�c*�L5G�5G�pA�A�(*�.*�8	�%�@+%�\%�8 �%&�P,&�^%�"
'� -�&�-�
1�������$�-E��F�E3�E3�G�E3�P������);�)B�)D�E��E�r$

Youez - 2016 - github.com/yon3zu
LinuXploit