+
    i                    |   ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	H
u Ht ^ RIHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtH t H!t!H"t"  ! R R4      t# ! R R]#4      t$ ! R R4      t% ! R	 R
]$4      t& ! R R]#4      t' ! R R]#4      t( ! R R4      t) ! R R4      t* ! R R4      t+ ! R R4      t, ! R R4      t- ! R R4      t. ! R R4      t/R t0R t1R t2R  t3R! t4R" t5R# t6R$ t7R% t8R& t9R' t: ! R( R)]4      t;R* t<]Pz                  P}                  ]'       * R+R,7       ! R- R.4      4       t?R# )/    N)HAS_REFCOUNTassert_assert_allcloseassert_almost_equalassert_approx_equalassert_array_almost_equalassert_array_almost_equal_nulpassert_array_equalassert_array_lessassert_array_max_ulpassert_equalassert_no_gc_cyclesassert_no_warningsassert_raisesassert_string_equalassert_warnsbuild_err_msgclear_and_catch_warningssuppress_warningstempdirtemppathc                   P   a  ] tR t^%t o R tR tR tR tR tR t	R t
R tR	tV tR
# )_GenericTestc                (    V P                  W4       R # N_assert_funcselfabs   &&&@/usr/lib/python3/dist-packages/numpy/testing/tests/test_utils.py_test_equal_GenericTest._test_equal'   s    !    c                    \        \        4      ;_uu_ 4        V P                  W4       R R R 4       R #   + '       g   i     R # ; ir   )r   AssertionErrorr   r   s   &&&r"   _test_not_equal_GenericTest._test_not_equal*   s*    >**a# +***s	   4A	c                    \         P                  ! ^^.4      p\         P                  ! ^^.4      pV P                  W4       R# )z/Test two equal array of rank 1 are found equal.Nnparrayr#   r   s   &  r"   test_array_rank1_eq _GenericTest.test_array_rank1_eq.   s4    HHaVHHaVr%   c                    \         P                  ! ^^.4      p\         P                  ! ^^.4      pV P                  W4       R# )z7Test two different array of rank 1 are found not equal.Nr,   r-   r(   r   s   &  r"   test_array_rank1_noteq#_GenericTest.test_array_rank1_noteq5   s4    HHaVHHaVQ"r%   c                    \         P                  ! ^^.^^..4      p\         P                  ! ^^.^^..4      pV P                  W4       R# )z/Test two equal array of rank 2 are found equal.Nr+   r   s   &  r"   test_array_rank2_eq _GenericTest.test_array_rank2_eq<   sF    HHq!fq!f%&HHq!fq!f%&r%   c                    \         P                  ! ^^.4      p\         P                  ! ^^.^^..4      pV P                  W4       R# ):Test two arrays with different shapes are found not equal.Nr1   r   s   &  r"   test_array_diffshape!_GenericTest.test_array_diffshapeC   s=    HHaVHHq!fq!f%&Q"r%   c                f    \         P                  ! ^^.\        R7      pV P                  V^4       R# )zTest object arrays.dtypeN)r,   r-   objectr#   r   r    s   & r"   test_objarray_GenericTest.test_objarrayJ   s&    HHaV6*Ar%   c                .    V P                  . ROR4       R# )   NrC         )r#   r   s   &r"   test_array_likes_GenericTest.test_array_likesO   s    I.r%    N)__name__
__module____qualname____firstlineno__r#   r(   r.   r2   r5   r9   r@   rH   __static_attributes____classdictcell____classdict__s   @r"   r   r   %   s2      $##
/ /r%   r   c                      a  ] tR t^St o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tR tR tR tRtV tR# )TestArrayEqualc                    \         V n        R # r   )r
   r   rG   s   &r"   setup_methodTestArrayEqual.setup_methodU   s
    .r%   c                X   a  V 3R lpR F  pV! V4       K  	  R F  pV! V4       K  	  R# )z!Test rank 1 array for all dtypes.c                    < \         P                  ! ^V 4      pVP                  ^4       VP                  4       pVP                  4       pVP                  ^ 4       SP	                  W4       SP                  W24       R# )rE   Nr,   emptyfillcopyr#   r(   tr    r!   cr   s   &   r"   foo.TestArrayEqual.test_generic_rank1.<locals>.fooZ   sZ    AAFF1IAAFF1IQ"  &r%   ?bhilqpBHILQPfdgFDGNS1U1rJ   r   ra   r_   s   f  r"   test_generic_rank1!TestArrayEqual.test_generic_rank1X   .    	' 'AF ' AF r%   c                   \         P                  ! R 4      p\         P                  ! R4      p\        P                  ! \        4      ;_uu_ 4       pV P                  W4       RRR4       \        XP                  4      p\        RV9   4       TpV P                  W4       \         P                  ! R4      p\         P                  ! ^ 4      pRp\        P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P                  W4       RRR4       TpV P                  W4       R#   + '       g   i     L; i  + '       g   i     L8; i)l   Cj<T"3w-l   (M$c7uvNz"Mismatched elements: 1 / 1 (100%)
gLxrBzMismatched 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_array TestArrayEqual.test_0_ndim_arrayk   s    HH9:HH89]]>**ha# +(..!5 	 !HH34HHQKJ ]]><1HIIa# J !' +* JIs   D4E4E	E	c                X   a  V 3R lpR F  pV! V4       K  	  R F  pV! V4       K  	  R# )z!Test rank 3 array for all dtypes.c                    < \         P                  ! RV 4      pVP                  ^4       VP                  4       pVP                  4       pVP                  ^ 4       SP	                  W4       SP                  W24       R# )   N)r}   rE   rF   rZ   r^   s   &   r"   ra   .TestArrayEqual.test_generic_rank3.<locals>.foo   s[    A&AFF1IAAFF1IQ"  &r%   rc   Nrd   rJ   rg   s   f  r"   test_generic_rank3!TestArrayEqual.test_generic_rank3   rj   r%   c                   \         P                  ! ^^\         P                  .4      p\         P                  ! ^^\         P                  .4      pV P                  W4       \         P                  ! . RO4      pV P	                  W24       R# )z$Test arrays with nan values in them.NrD   )r,   r-   nanr#   r(   r   r    r!   r`   s   &   r"   test_nan_arrayTestArrayEqual.test_nan_array   s\    HHaBFF^$HHaBFF^$HHYQ"r%   c                    \         P                  ! RR.4      p\         P                  ! RR.4      pV P                  W4       \         P                  ! RR.4      pV P                  W24       R# )r8   floupifloupafloupipiN)r,   r-   r#   r(   r   s   &   r"   test_string_arrays!TestArrayEqual.test_string_arrays   sW    HHh)*HHh)*HHj(+,Q"r%   c                   \         P                  ! ^R\        3R\        3.4      p^^.VR&   ^^.VR&   VP                  4       pV P	                  W4       \         P                  ! ^R\        3R\        3R\        3.4      pVR,          P                  4       VR&   VR,          P                  4       VR&   \
        P                  ! \        4      ;_uu_ 4        V P                  W24       RRR4       R#   + '       g   i     R# ; i)zTest record arrays.r   r   r   N)	r,   r[   floatr]   r#   rn   ro   	TypeErrorr(   r   s   &   r"   test_recarraysTestArrayEqual.test_recarrays   s    HHQ(E*Xu,=>?!f(!f(FFHHHQ*e,"E*Xu,=? @(((**k&&((]]9%%  & &%%%s   C33D	c                   \         P                  P                  . RO. ROR7      p\         P                  ! R \         P                  R.4      pV P                  W4       V P                  W!4       \         P                  P                  . RO. ROR7      p\         P                  ! \         P                  RR.4      pV P                  W4       V P                  W!4       R# )      @      @      @maskNr   r   r   )FTF)TFF)r,   maMaskedArrayr-   r   r#   infr   s   &  r"   test_masked_nan_inf"TestArrayEqual.test_masked_nan_inf   s    EEm2FGHHb"&&#&'EEm2FGHHbffb#&'r%   c                    ! R  R\         P                  4      p\         P                  ! RR.4      P                  V4      p\         P                  ! RR.4      P                  V4      p\	        \        W"8H  4      \        4       \	        W"8H  4       \	        W#8g  4       V P                  W"4       V P                  W#4       V P                  W24       Rp\        P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P                  W#4       RRR4       \         P                  ! RR	.4      P                  V4      pR
p\        P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P                  W54       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)c                   ,   a  ] tR t^t o R tR tRtV tR# )?TestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArrayc                \    \        \        P                  ! W4      P                  4       4      # r   )boolr,   equalallr   others   &&r"   __eq__FTestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArray.__eq__   s    BHHT155788r%   c                    W8X  * # r   rJ   r   s   &&r"   __ne__FTestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArray.__ne__   s    ((r%   rJ   N)rK   rL   rM   rN   r   r   rO   rP   rQ   s   @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.5rl   N        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(   rn   ro   r'   rr   rs   )r   r   r    r!   rx   r`   s   &     r"   test_subclass_that_overrides_eq.TestArrayEqual.test_subclass_that_overrides_eq   sC   
	)bjj 	) HHb"X##G,HHb"X##G,QVd#Q"Q"H ]]><1HIIQ" J HHb#Y$$W-H ]]><1HIIQ" JI JI JIIs   
F!F4!F1	4G	c                    ! R  R\         P                  4      p\         P                  ! RR.4      P                  V4      p\         P                  ! RR.4      P                  V4      p\	        \
        4      ;_uu_ 4        \         P                  ! V4       RRR4       V P                  W"4       V P                  W#4       V P                  W24       R#   + '       g   i     LE; i)c                   &   a  ] tR t^t o R tRtV tR# )KTestArrayEqual.test_subclass_that_does_not_implement_npall.<locals>.MyArrayc                    \         # r   )NotImplementedr   argskwargss   &*,r"   __array_function__^TestArrayEqual.test_subclass_that_does_not_implement_npall.<locals>.MyArray.__array_function__   s    %%r%   rJ   N)rK   rL   rM   rN   r   rO   rP   rQ   s   @r"   r   r      s     & &r%   r   r   r   r   N)	r,   r   r-   r   r   r   r   r#   r(   )r   r   r    r!   s   &   r"   +test_subclass_that_does_not_implement_npall:TestArrayEqual.test_subclass_that_does_not_implement_npall   s    	&bjj 	& HHb"X##G,HHb"X##G,9%%FF1I &Q"Q"	 &%s   ?CC#	c                   \         P                  ! \        4      ;_uu_ 4        \        P                  ! R R7      ;_uu_ 4        \        P
                  P                  \        P                  ! . RO\        P                  4      \        P                  ! . RO\        P                  4      4       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)raiser   NrD   )rC   gWw'&l7rF   )	rn   ro   r'   r,   errstatetestingr
   r-   float32rG   s   &r"   test_suppress_overflow_warnings.TestArrayEqual.test_suppress_overflow_warnings   sv    ]]>**))

--HHY

3HH]BJJ79 * +*)) +**s$    CA+C 	.C CCC$	c                \    \         P                  ! . RO4      pRpV P                  W4       R# )z@Test comparing an array with a scalar when all values are equal.r   Nr   r   r   r+   r   s   &  r"   test_array_vs_scalar_is_equal,TestArrayEqual.test_array_vs_scalar_is_equal   s#    HH\"r%   c                4   \         P                  ! . RO4      p\         P                  ! . RO4      pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W4       RRR4       \         P                  ! . RO4      pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W4       RRR4       R#   + '       g   i     L~; i  + '       g   i     R# ; i)z@Test comparing an array with a scalar when not all values equal.zMismatched elements: 1 / 4 (25%)
Max absolute difference among violations: 563766
Max relative difference among violations: infrl   NzMismatched elements: 2 / 4 (50%)
Max absolute difference among violations: 563766.
Max relative difference among violations: 4.54902139e-07)骈  S g 6 )r   r   r   r   )r   r   g̜Ar   r,   r-   rn   ro   r'   rr   rs   r   r   r    r!   rx   s   &   r"   test_array_vs_array_not_equal,TestArrayEqual.test_array_vs_array_not_equal  s    HH45HH/0H ]]><1HIIa# J HH67)
 ]]><1HIIa# JI JI JIIs   +C3D3D	D	c                    \         P                  ! . RO4      pRp\        P                  ! \        4      ;_uu_ 4        V P                  WRR7       RRR4       R#   + '       g   i     R# ; i)z9Test comparing an array with a scalar with strict option.r   TstrictNr   r,   r-   rn   ro   r'   r   r   s   &  r"   test_array_vs_scalar_strict*TestArrayEqual.test_array_vs_scalar_strict  sF    HH\"]]>**a40 +***s   AA,	c                    \         P                  ! . RO4      p\         P                  ! . RO4      pV P                  WRR7       R# )-Test comparing two arrays with strict option.Tr   Nr   )r,   r-   r   r   s   &  r"   test_array_vs_array_strict)TestArrayEqual.test_array_vs_array_strict"  s1    HH\"HH\"!t,r%   c                
   \         P                  ! . RO4      p\         P                  ! . RO4      p\        P                  ! \        4      ;_uu_ 4        V P                  WRR7       RRR4       R#   + '       g   i     R# ; i)r   Tr   N)rC   rC   rC   r   r   r   s   &  r"    test_array_vs_float_array_strict/TestArrayEqual.test_array_vs_float_array_strict)  sO    HHYHH\"]]>**a40 +***s   A11B	r   N)rK   rL   rM   rN   rV   rh   ry   r   r   r   r   r   r   r   r   r   r   r   r   r   rO   rP   rQ   s   @r"   rT   rT   S   s[     /& 2&#	#'"	 #D#9$(1-1 1r%   rT   c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )TestBuildErrorMessagei2  c                    \         P                  ! . RO4      p\         P                  ! . RO4      pRp\        W.V4      pRp\        WE4       R# )rZ|
 ?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])Nr   rZ|
  @& @g㈵ ?&  @㈵ @r,   r-   r   r   r   rt   ru   err_msgr    r!   s   &     r"   test_build_err_msg_defaults1TestBuildErrorMessage.test_build_err_msg_defaults4  sD    HH01HH01'1&'*" 	Qr%   c                    \         P                  ! . RO4      p\         P                  ! . RO4      pRp\        W.VRR7      pRp\        WE4       R# )r   r   F)verbosez)
Items are not equal: There is a mismatchNr   r   r   r   s   &     r"   test_build_err_msg_no_verbose3TestBuildErrorMessage.test_build_err_msg_no_verbose?  sB    HH01HH01'1&'598Qr%   c                    \         P                  ! . RO4      p\         P                  ! . RO4      pRp\        W.VRR7      pRp\        WE4       R# )r   r   )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])Nr   r   )FOOBARr   r   s   &     r"   test_build_err_msg_custom_names5TestBuildErrorMessage.test_build_err_msg_custom_namesH  sF    HH01HH01'1&'@ 	Qr%   c                    \         P                  ! . RO4      p\         P                  ! . RO4      pRp\        W.V^
R7      pRp\        WE4       R# )0D   ?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    ])N)r   r   r   )g_p   ?r   r   r   r   s   &     r"   #test_build_err_msg_custom_precision9TestBuildErrorMessage.test_build_err_msg_custom_precisionS  sF    HH45HH45'1&'R87 	Qr%   rJ   N)
rK   rL   rM   rN   r   r   r   r   rO   rP   rQ   s   @r"   r   r   2  s     			 	r%   r   c                   \   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tRtV tR# )	TestEquali_  c                    \         V n        R # r   )r   r   rG   s   &r"   rV   TestEqual.setup_methoda  s
    (r%   c                `   V P                  \        P                  \        P                  4       V P                  \        P                  .\        P                  .4       V P                  \        P                  \        P                  .4       V P                  \        P                  ^4       R# rC   N)r   r,   r   r(   rG   s   &r"   test_nan_itemsTestEqual.test_nan_itemsd  sd    "&&"&&)266(RVVH-RVVbffX.RVVQ'r%   c                    V P                  \        P                  \        P                  4       V P                  \        P                  .\        P                  .4       V P                  \        P                  \        P                  .4       R # r   )r   r,   r   r(   rG   s   &r"   test_inf_itemsTestEqual.test_inf_itemsj  sP    "&&"&&)266(RVVH-RVVbffX.r%   c                   V P                  \        P                  ! R R4      \        P                  ! R R4      4       V P                  \        P                  ! R R4      \        P                  ! R R4      4       V P                  \        P                  ! R R4      \        P                  ! RR4      4       V P                  \        P                  ! R R4      \        P                  ! RR4      4       R# )
2017-01-01smz
2017-01-02N)r#   r,   
datetime64r(   rG   s   &r"   test_datetimeTestEqual.test_datetimeo  s    MM,,MM,,	
 	MM,,MM,,	
 	MM,,MM,,	
 	MM,,MM,,	
r%   c                n   \         P                  ! R 4      p\         P                  ! R R4      p\         P                  ! R R4      p\         P                  ! R 4      p\         P                  ! R R4      p\         P                  ! R R4      pWV.pWEV.p\        P                  ! Ww4       F=  w  rV P                  W4       V P                  V	.V
.4       V P                  V	.V
4       K?  	  \        P                  ! W4       F=  w  rV P                  W4       V P                  V	.V
.4       V P                  V	.V
4       K?  	  \        P                  ! W4       F  w  rV P                  W4       V P                  W.4       V P                  V	.V
.4       V P                  V	.\         P                  ! RR4      4       V P                  V
.\         P                  ! RR4      4       V P                  V	.\         P                  ! ^{R4      4       V P                  V
.\         P                  ! ^{R4      4       K  	  R# )NaTr  nsr  N)r,   r  timedelta64	itertoolsproductr   r(   )r   nadt_no_unitnadt_snadt_dnatd_no_unitnatd_snatd_ddtstdsr    r!   s   &          r"   test_nat_itemsTestEqual.test_nat_items  s   }}U+uc*ud+~~e,s+t,V,V,%%c/DAa#qcA3'  !a( 0
 %%c/DAa#qcA3'  !a( 0
 %%c/DA  &  C(  !qc*  !bmmL#&FG  !bmmL#&FG  !bnnS#&>?  !bnnS#&>? 0r%   c                N    V P                  R R 4       V P                  R R4       R# )ababbN)r   r(   rG   s   &r"   test_non_numericTestEqual.test_non_numeric  s"    $%T5)r%   c                b   V P                  \        ^^4      \        ^^4      4       V P                  \        ^\        P                  4      \        ^\        P                  4      4       V P	                  \        ^\        P                  4      \        ^^4      4       V P	                  \        \        P                  ^4      \        ^\        P                  4      4       V P	                  \        \        P                  \        P
                  4      \        \        P                  ^4      4       R# r  )r   complexr,   r   r(   r   rG   s   &r"   test_complex_itemTestEqual.test_complex_item  s    '!Q-A7'!RVV,ga.@AWQ/A?WRVVQ/BFF1CDWRVVRVV4gbffa6HIr%   c                b    V P                  \        P                  \        P                  4       R # r   )r(   ncuPZERONZEROrG   s   &r"   test_negative_zeroTestEqual.test_negative_zero  s    SYY		2r%   c                   \         P                  ! \        ^^4      \        ^\         P                  4      .4      p\         P                  ! \        ^^4      \        ^^4      .4      pV P	                  W4       V P                  W4       R# r  r,   r-   r)  r   r   r(   r   rt   ru   s   &  r"   test_complexTestEqual.test_complex  sa    HHgamWQ%789HHgamWQ]34!Q"r%   c                    ^ RI p\        P                  ! VP                  R^^4      VP                  R^^4      .4      pV P                  W"RRR1,          4       R# )r   Ni  )datetimer,   r-   r(   )r   r9  r    s   &  r"   test_objectTestEqual.test_object  sQ    HHh''a3''a35 6Q$B$(r%   r   N)rK   rL   rM   rN   rV   r  r
  r  r!  r&  r*  r0  r5  r:  rO   rP   rQ   s   @r"   r  r  _  s>     )(/

(@>*J3#) )r%   r  c                   V   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tRtV tR# )TestArrayAlmostEquali  c                    \         V n        R # r   )r   r   rG   s   &r"   rV   !TestArrayAlmostEqual.setup_method  s
    5r%   c                   R p\         P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P                  RR^ R7       RRR4       V P                  R.R.^ R7       R p\         P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P                  R.R.^ R7       RRR4       RR.pR	^ .pR
p\         P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P                  W#^R7       RRR4       Rp\         P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P                  W2^R7       RRR4       R#   + '       g   i     EL6; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)z}Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.5
Max relative difference among violations: infrl         ?r   decimalN?ge(?giUMu>gB??zMismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 3.e-05
Max relative difference among violations: infz~Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 3.e-05
Max relative difference among violations: 1.rn   ro   r'   rr   rs   r   )r   rx   r    r!   s   &   r"   test_closeness#TestArrayAlmostEqual.test_closeness  s_   H ]]><1HIIc32 J 	8*seQ7H ]]><1HIIsecUA6 J  OH ]]><1HIIaA. JG ]]><1HIIaA. JI/ JII JI JI JIIs/   E=(F	F$F7=F	F!	$F4	7G	c                   \         P                  ! R .4      p\         P                  ! R.4      pV P                  W^R7       V P                  W^R7       Rp\        P                  ! \
        \        P                  ! V4      R7      ;_uu_ 4        V P                  W^R7       RRR4       R#   + '       g   i     R# ; i)geH@gwH@rB  zMismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.e-04
Max relative difference among violations: 8.10226812e-08rl   Nr,   r-   r   rn   ro   r'   rr   rs   r   rt   ru   rx   s   &   r"   test_simple TestArrayAlmostEqual.test_simple  s    HHi[!HHi[!!*!*)
 ]]><1HIIaA. JIIIs   B--B>	c                j   . ROpR pRp\         P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P                  W^	R7       RRR4       Rp\         P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P                  W!^	R7       RRR4       R R.pRp\         P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P                  W!^R7       RRR4       ^ pRp\         P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P                  W^R7       RRR4       R#   + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)	mlz@r   zMismatched elements: 2 / 3 (66.7%)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: 1.rl   rB  NzMismatched elements: 2 / 3 (66.7%)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: 5.4722099zMismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: inf)rN  gHPX@r   rE  r   s   &   r"   test_array_vs_scalar)TestArrayAlmostEqual.test_array_vs_scalar  sD   )G ]]><1HIIaA. JN ]]><1HIIaA. J H ]]><1HIIaA. J H ]]><1HIIaA. JI/ JII JI JI JIIs0   E'E;1F	F!'E8	;F	F	!F2	c                x  a aaa \         P                  ! \         P                  .4      o\         P                  ! ^.4      o\         P                  ! \         P                  .4      oS P	                  SS4       \        \        VVV 3R l4       \        \        VVV 3R l4       \        \        VVV 3R l4       R# )rC   c                  (   < SP                  S S4      # r   r   ananaoner   s   r"   <lambda>/TestArrayAlmostEqual.test_nan.<locals>.<lambda>      d//d;r%   c                  (   < SP                  SS 4      # r   r   ainfrT  r   s   r"   rV  rW     rX  r%   c                  (   < SP                  S S4      # r   r   rZ  s   r"   rV  rW  "  rX  r%   Nr,   r-   r   r   r   r   r'   r   r[  rT  rU  s   f@@@r"   test_nanTestArrayAlmostEqual.test_nan  sq    xx!xx}xx!$%n;	=n;	=n;	=r%   c                
  a aa \         P                  ! R R.RR..4      oSP                  4       o\         P                  SR&   \	        \
        VVV 3R l4       \         P                  ) SR&   \	        \
        VVV 3R l4       R# )r   r   r   r   c                  (   < SP                  S S4      # r   r   r    r!   r   s   r"   rV  /TestArrayAlmostEqual.test_inf.<locals>.<lambda>)      d//15r%   c                  (   < SP                  S S4      # r   r   rc  s   r"   rV  rd  ,  re  r%   N)r   r   )r,   r-   r]   r   r   r'   r   s   f@@r"   test_infTestArrayAlmostEqual.test_inf$  s_    HHr2hR)*FFH&&$n5	766'$n5	7r%   c                   \         P                  ! R R.RR..4      p\         P                  P                  R R.RR..RR.RR..4      pV P	                  W4       V P	                  W!4       V P	                  W"4       \         P                  P                  RRR7      p\         P                  ! . R
O4      pV P                  W4       V P                  W!4       \         P                  P                  p\         P                  ! . R
O4      pV P                  W4       V P                  W!4       \         P                  P                  . R
O. ROR7      p\         P                  ! . RO4      pV P                  W4       V P                  W!4       \         P                  P                  . R
O. ROR7      p\         P                  ! R 4      pV P                  W4       V P                  W!4       R	# )r   r   r   r   r   FTg      @r   Nr   )TTT)r   r   r   )r,   r-   r   masked_arrayr   r   r#   maskedr   s   &  r"   test_subclass"TestArrayAlmostEqual.test_subclass.  s~   HHr2hR)*EER2r(3!&u>@!!! EEc-HH]#EELLHH]#EEm2DEHH\"EEm2DEHHRLr%   c                *    ! R  R\         P                  4      p\         P                  ! RR.4      P                  V4      pV P	                  W"4       \         P                  ! RR.4      P                  V4      p\        V4       \         P                  ! R^.4      P                  V4      pRp\        P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        V P	                  W$4       RRR4       R#   + '       g   i     R# ; i)c                   D   a a ] tR tRt oV 3R ltV 3R ltR tRtVtV ;t	# )5TestArrayAlmostEqual.test_subclass_2.<locals>.MyArrayiM  c                \   < \         SV `  V4      P                  \        P                  4      # r   superr   r   r,   r   r   r   	__class__s   &&r"   r   <TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.__eq__N  !    w~e,11"**==r%   c                \   < \         SV `  V4      P                  \        P                  4      # r   rs  __lt__r   r,   r   rt  s   &&r"   rz  <TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.__lt__Q  rw  r%   c                    \        V 4      # r   r   r   s   &*,r"   r   9TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.allT  s    4y r%   rJ   
rK   rL   rM   rN   r   rz  r   rO   rP   __classcell__ru  rR   s   @@r"   r   rp  M  s     >>! !r%   r   r   r   TzMismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 200.
Max relative difference among violations: 0.99009rl   N)r,   r   r-   r   r   r   rn   ro   r'   rr   rs   )r   r   r    zr!   rx   s   &     r"   test_subclass_2$TestArrayAlmostEqual.test_subclass_2H  s    
	!bjj 	! HHb"X##G,!HHdD\"''0AHHb#Y$$W-L ]]><1HIIa# JIIIs   %DD	c                     ! R  R\         P                  4      p\         P                  ! RR.4      P                  V4      pV P	                  W"4       R# )c                   D   a a ] tR tRt oV 3R ltV 3R ltR tRtVtV ;t	# )GTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArrayih  c                \   < \         SV `  V4      P                  \        P                  4      # r   rr  rt  s   &&r"   r   NTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__eq__i  rw  r%   c                \   < \         SV `  V4      P                  \        P                  4      # r   ry  rt  s   &&r"   rz  NTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__lt__l  rw  r%   c                    \         hr   NotImplementedErrorr   s   &*,r"   r   KTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.allo      ))r%   rJ   r~  r  s   @@r"   r   r  h       >>* *r%   r   r   r   Nr,   r   r-   r   r   r   r   r    s   &  r"   !test_subclass_that_cannot_be_bool6TestArrayAlmostEqual.test_subclass_that_cannot_be_boolc  ?    
	*bjj 	* HHb"X##G,!r%   r   N)rK   rL   rM   rN   rV   rF  rK  rO  r_  rg  rl  r  r  rO   rP   rQ   s   @r"   r=  r=    s9     6#/J//B
=74$6   r%   r=  c                   \   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tRtV tR# )TestAlmostEqualiv  c                    \         V n        R # r   )r   r   rG   s   &r"   rV   TestAlmostEqual.setup_methodx  
    /r%   c                   a  S P                  R R^ R7       \        \        V 3R l4       S P                  R .R.^ R7       \        \        V 3R l4       R# )rD  r   rB  c                  ,   < S P                  R R^ R7      # rA  r   rB  r   rG   s   r"   rV  0TestAlmostEqual.test_closeness.<locals>.<lambda>  s    d//S!/Dr%   c                  0   < S P                  R .R.^ R7      # r  r   rG   s   r"   rV  r    s    d//ua/Hr%   Nr   r   r'   rG   s   fr"   rF  TestAlmostEqual.test_closeness{  sQ     	(C3nD	F 	8*seQ7nH	Jr%   c                   a  S P                  \        P                  \        P                  4       \        \        V 3R  l4       \        \        V 3R l4       \        \        V 3R l4       R# )c                  D   < S P                  \        P                  ^4      # rC   )r   r,   r   rG   s   r"   rV  /TestAlmostEqual.test_nan_item.<locals>.<lambda>      d//:r%   c                  `   < S P                  \        P                  \        P                  4      # r   )r   r,   r   r   rG   s   r"   rV  r        d//?r%   c                  `   < S P                  \        P                  \        P                  4      # r   )r   r,   r   r   rG   s   r"   rV  r    r  r%   N)r   r,   r   r   r'   rG   s   fr"   test_nan_itemTestAlmostEqual.test_nan_item  sD    "&&"&&)n:	<n?	An?	Ar%   c                  a  S P                  \        P                  \        P                  4       S P                  \        P                  ) \        P                  ) 4       \        \        V 3R  l4       \        \        V 3R l4       R# )c                  D   < S P                  \        P                  ^4      # r  r   r,   r   rG   s   r"   rV  /TestAlmostEqual.test_inf_item.<locals>.<lambda>  r  r%   c                  b   < S P                  \        P                  ) \        P                  4      # r   r  rG   s   r"   rV  r    s    d//@r%   N)r   r,   r   r   r'   rG   s   fr"   test_inf_itemTestAlmostEqual.test_inf_item  sR    "&&"&&)266'BFF7+n:	<n@	Br%   c                *    V P                  ^^4       R# r  )r(   rG   s   &r"   test_simple_item TestAlmostEqual.test_simple_item  s    Q"r%   c                   V P                  \        ^^4      \        ^^4      4       V P                  \        ^\        P                  4      \        ^\        P                  4      4       V P                  \        \        P                  \        P                  4      \        \        P                  \        P                  4      4       V P                  \        ^\        P                  4      \        ^^4      4       V P                  \        \        P                  ^4      \        ^\        P                  4      4       V P                  \        \        P                  \        P                  4      \        \        P                  ^4      4       R# r  )r   r)  r,   r   r   r(   rG   s   &r"   r*  !TestAlmostEqual.test_complex_item  s    '!Q-A7'!RVV,ga.@A'"&&"&&172662663JKWQ/A?WRVVQ/BFF1CDWRVVRVV4gbffa6HIr%   c                   \         P                  ! \        ^^4      \        ^\         P                  4      .4      p\         P                  ! \        ^^4      \        \         P                  ^4      .4      p\         P                  ! \        ^^4      \        ^^4      .4      pV P	                  W4       V P                  W4       V P                  W4       R# r  r3  )r   rt   r  ru   s   &   r"   r5  TestAlmostEqual.test_complex  s    HHgamWQ%789HHgamWRVVQ%789HHgamWQ]34!Q"Q"r%   c                   \         P                  ! . RO4      p\         P                  ! . R	O4      pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W^R7       RRR4       Rp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W4       RRR4       \         P                  ! \         P                  ^ .4      p\         P                  ! \         P                  ^.4      pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W4       RRR4       \         P                  ! ^^.4      p\         P                  ! ^ ^ .4      pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W4       RRR4       R#   + '       g   i     EL; i  + '       g   i     ELK; i  + '       g   i     L; i  + '       g   i     R# ; i)
zCheck the message is formatted correctly for the decimal value.
Also check the message when input includes inf or nan (gh12200)a  Mismatched 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      ])rl   rB  NzMismatched 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])zMismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 1.
Max relative difference among violations: 1.
 ACTUAL: array([inf,  0.])
 DESIRED: array([inf,  1.])z{Mismatched elements: 2 / 2 (100%)
Max absolute difference among violations: 2
Max relative difference among violations: inf)g    ?g     @r   )g_   ?g    @r   )	r,   r-   rn   ro   r'   rr   rs   r   r   rJ  s   &   r"   test_error_message"TestAlmostEqual.test_error_message  s    HH<=HH<=* ]]><1HIIaB/ JG ]]><1HIIa# J HHbffa[!HHbffa[!6
 ]]><1HIIa# J HHaVHHaVH ]]><1HIIa# JIA JII JII JI JIIs0   +HH!H)%H<H	H&	)H9	<I	c                    ^p\         P                  ! ^4      pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W4       RRR4       ^p\         P                  ! ^4      pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W4       RRR4       R#   + '       g   i     L~; i  + '       g   i     R# ; i)z)Check the message is formatted correctly z}Mismatched elements: 20 / 20 (100%)
Max absolute difference among violations: 1.
Max relative difference among violations: 1.rl   Nz~Mismatched elements: 20 / 20 (100%)
Max absolute difference among violations: 1.
Max relative difference among violations: 0.5)r,   onesrn   ro   r'   rr   rs   r   rJ  s   &   r"   test_error_message_2$TestAlmostEqual.test_error_message_2  s    -GGBKG ]]><1HIIa# J GGBKH ]]><1HIIa# JI JI JIIs   C C/C,	/D 	c                     ! R  R\         P                  4      p\         P                  ! RR.4      P                  V4      pV P	                  W"4       R# )c                   D   a a ] tR tRt oV 3R ltV 3R ltR tRtVtV ;t	# )BTestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArrayi  c                \   < \         SV `  V4      P                  \        P                  4      # r   rr  rt  s   &&r"   r   ITestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__eq__  rw  r%   c                \   < \         SV `  V4      P                  \        P                  4      # r   ry  rt  s   &&r"   rz  ITestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__lt__  rw  r%   c                    \         hr   r  r   s   &*,r"   r   FTestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.all  r  r%   rJ   r~  r  s   @@r"   r   r    r  r%   r   r   r   Nr  r  s   &  r"   r  1TestAlmostEqual.test_subclass_that_cannot_be_bool  r  r%   r   N)rK   rL   rM   rN   rV   rF  r  r  r  r*  r5  r  r  r  rO   rP   rQ   s   @r"   r  r  v  sA     0J"AB#J#1$f$&   r%   r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	TestApproxEquali	  c                    \         V n        R # r   )r   r   rG   s   &r"   rV   TestApproxEqual.setup_method  r  r%   c                   a aa \         P                  ! R 4      o\         P                  ! R4      oS P                  SS^R7       S P                  SS^R7       \        \        V VV3R l4       R# ){GH@RH@significantc                  ,   < S P                  SS^R7      #    r  r   r4  s   r"   rV  7TestApproxEqual.test_simple_0d_arrays.<locals>.<lambda>      d//1!/Dr%   N)r,   r-   r   r   r'   r4  s   f@@r"   test_simple_0d_arrays%TestApproxEqual.test_simple_0d_arrays  sW    HHWHHW!QA.!QA.nD	Fr%   c                   a aa R oRoS P                  SS^R7       S P                  SS^R7       S P                  SS^R7       \        \        V VV3R l4       R# )r  r  r  c                  ,   < S P                  SS^R7      # r  r   r4  s   r"   rV  3TestApproxEqual.test_simple_items.<locals>.<lambda>  r  r%   Nr  r4  s   f@@r"   test_simple_items!TestApproxEqual.test_simple_items  sZ    !QA.!QA.!QA.nD	Fr%   c                r  a aaa \         P                  ! \         P                  4      o\         P                  ! ^4      o\         P                  ! \         P                  4      oS P	                  SS4       \        \        VVV 3R l4       \        \        VVV 3R l4       \        \        VVV 3R l4       R# )rC   c                  (   < SP                  S S4      # r   r   rS  s   r"   rV  0TestApproxEqual.test_nan_array.<locals>.<lambda>&      d.?.?d.Kr%   c                  (   < SP                  SS 4      # r   r   rZ  s   r"   rV  r  '  r  r%   c                  (   < SP                  S S4      # r   r   rZ  s   r"   rV  r  (  r  r%   Nr]  r^  s   f@@@r"   r   TestApproxEqual.test_nan_array!  e    xxxx{xx$%n&KLn&KLn&KLr%   c                r  a aaa \         P                  ! \         P                  4      o\         P                  ! ^4      o\         P                  ! \         P                  4      oS P	                  SS4       \        \        VVV 3R l4       \        \        VVV 3R l4       \        \        VVV 3R l4       R# )rC   c                  (   < SP                  S S4      # r   r   rS  s   r"   rV  0TestApproxEqual.test_nan_items.<locals>.<lambda>/  r  r%   c                  (   < SP                  SS 4      # r   r   rZ  s   r"   rV  r  0  r  r%   c                  (   < SP                  S S4      # r   r   rZ  s   r"   rV  r  1  r  r%   Nr]  r^  s   f@@@r"   r  TestApproxEqual.test_nan_items*  r  r%   r   N)rK   rL   rM   rN   rV   r  r  r   r  rO   rP   rQ   s   @r"   r  r  	  s(     0FFMM Mr%   r  c                   h   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tR tR tRtV tR# )TestArrayAssertLessi4  c                    \         V n        R # r   )r   r   rG   s   &r"   rV    TestArrayAssertLess.setup_method6  s
    -r%   c                t  a aa \         P                  ! R R.4      o\         P                  ! RR.4      oS P                  SS4       \        \        V VV3R l4       \         P                  ! RR.4      o\        \        V VV3R l4       \        \        V VV3R l4       \         P                  ! . RO4      p\         P                  ! . RO4      pRp\
        P                  ! \        \        P                  ! V4      R	7      ;_uu_ 4        S P                  W4       R
R
R
4       R
#   + '       g   i     R
# ; i)皙?皙@333333?ffffff@c                  (   < S P                  SS4      # r   r   r4  s   r"   rV  8TestArrayAssertLess.test_simple_arrays.<locals>.<lambda>>      d.?.?1.Er%   r   c                  (   < S P                  SS4      # r   r   r4  s   r"   rV  r  B  r  r%   c                  (   < S P                  SS4      # r   r   r4  s   r"   rV  r  C  r  r%   z{Mismatched elements: 2 / 4 (50%)
Max absolute difference among violations: 12
Max relative difference among violations: 1.5rl   N)rC   rF         )rE   r}   r     )	r,   r-   r   r   r'   rn   ro   rr   rs   )r   r    r!   rx   rt   ru   s   f   @@r"   test_simple_arrays&TestArrayAssertLess.test_simple_arrays9  s    HHc3Z HHc3Z !Qn&EFHHc3Z n&EFn&EFHH]#HH\"H ]]><1HIIa# JIIIs   
D&&D7	c                   a aa \         P                  ! R R.RR..4      o\         P                  ! RR.RR..4      oS P                  SS4       Rp\        P                  ! \
        \        P                  ! V4      R	7      ;_uu_ 4        S P                  SS4       R
R
R
4       \         P                  ! RR.RR..4      o\        \
        V VV3R l4       \        \
        V VV3R l4       R
#   + '       g   i     LZ; i)r  r  ffffff
@g@r  r  g333333@g      @zMismatched elements: 4 / 4 (100%)
Max absolute difference among violations: 0.1
Max relative difference among violations: 0.09090909rl   Nr   c                  (   < S P                  SS4      # r   r   r4  s   r"   rV  0TestArrayAssertLess.test_rank2.<locals>.<lambda>Z  r  r%   c                  (   < S P                  SS4      # r   r   r4  s   r"   rV  r  [  r  r%   )	r,   r-   r   rn   ro   r'   rr   rs   r   r   rx   rt   ru   s   f @@r"   
test_rank2TestArrayAssertLess.test_rank2N  s    HHsCj3*-.HHsCj3*-.!QO ]]><1HIIa# J HHsCj3*-.n&EFn&EF JIs   C--C=	c                  a aa \         P                  ! RR7      o\         P                  ! RR7      ^,           oS P                  SS4       \        \        V VV3R l4       ^ SR&   Rp\
        P                  ! \        \        P                  ! V4      R7      ;_uu_ 4        S P                  SS4       RRR4       \        \        V VV3R l4       R#   + '       g   i     L(; i)	rE   )shapec                  (   < S P                  SS4      # r   r   r4  s   r"   rV  0TestArrayAssertLess.test_rank3.<locals>.<lambda>b  r  r%   z}Mismatched elements: 1 / 8 (12.5%)
Max absolute difference among violations: 1.
Max relative difference among violations: infrl   Nc                  (   < S P                  SS4      # r   r   r4  s   r"   rV  r  k  r  r%   )rE   rE   rE   )r   r   r   )	r,   r  r   r   r'   rn   ro   rr   rs   r  s   f @@r"   
test_rank3TestArrayAssertLess.test_rank3]  s    GG)$GG)$q(!Qn&EF'
H ]]><1HIIa# J 	n&EF JIs    CC#	c                  a aa R oRoS P                  SS4       Rp\        P                  ! \        \        P
                  ! V4      R7      ;_uu_ 4        S P                  SS4       RRR4       \        P                  ! RR.4      oS P                  SS4       \        \        V VV3R l4       \        P                  ! RR.4      o\        \        V VV3R l4       R#   + '       g   i     L; i)	r  r  z|Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.1
Max relative difference among violations: 1.rl   Nr  c                  (   < S P                  SS4      # r   r   r4  s   r"   rV  7TestArrayAssertLess.test_simple_items.<locals>.<lambda>{  r  r%   r   c                  (   < S P                  SS4      # r   r   r4  s   r"   rV  r    r  r%   )	r   rn   ro   r'   rr   rs   r,   r-   r   r  s   f @@r"   r  %TestArrayAssertLess.test_simple_itemsm  s    !QG ]]><1HIIa# J HHc3Z !Qn&EFHHc3Z n&EF JIs   CC/	c                p   \         P                  ! . RO. R	O. R
O.4      pRpV P                  W4       RpV P                  W!4       \         P                  ! . RO. RO. RO.4      pRpRp\        P                  ! \
        \        P                  ! V4      R7      ;_uu_ 4        V P                  W4       RRR4       Rp\        P                  ! \
        \        P                  ! V4      R7      ;_uu_ 4        V P                  W!4       RRR4       R#   + '       g   i     Lf; i  + '       g   i     R# ; i).c}j@gQ@gmXSY @Hze}.Az}Mismatched elements: 1 / 12 (8.33%)
Max absolute difference among violations: 0.
Max relative difference among violations: 0.rl   NzMismatched elements: 12 / 12 (100%)
Max absolute difference among violations: 999087.0864
Max relative difference among violations: 289288.5934676)r  g镲hx@g|yE@g㥛Ġ@)gQEK@gH}@g      *@V-Xy@)(\@Gz @nV@gt@)gk	@g6<R@g//8{@gMbеA)gףp=I@r  g=
ף@r  )r  r  r  gye}.ArI  rJ  s   &   r"   test_simple_items_and_array/TestArrayAssertLess.test_simple_items_and_array  s    HH@646 7 !!HHA?;= > G ]]><1HIIa# J)
 ]]><1HIIa# JI JI JIIs   !D5D$D!	$D5	c                   \         P                  ! . RO4      p\         P                  ! R4      pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W4       RRR4       Rp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W!4       RRR4       ^ pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W4       RRR4       Rp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        V P                  W!4       RRR4       R#   + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)	    0 Ag    `f@zMismatched elements: 1 / 3 (33.3%)
Max absolute difference among violations: 458802.
Max relative difference among violations: 5.23423917rl   NzMismatched elements: 2 / 3 (66.7%)
Max absolute difference among violations: 87654.
Max relative difference among violations: 5670.5626011zMismatched 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: inf)r  r   g)\.@r   rJ  s   &   r"   test_zeroesTestArrayAssertLess.test_zeroes  s6   HH)*HHVO ]]><1HIIa# J' ]]><1HIIa# J H ]]><1HIIa# JH ]]><1HIIa# JI+ JII JI JI JIIs0   )F=FF*'F=F	F'	*F:	=G	c                  a aaa \         P                  ! \         P                  4      o\         P                  ! ^4      o\         P                  ! \         P                  4      oS P	                  SS4       \        \        VVV 3R l4       \        \        VVV 3R l4       \        \        VVV 3R l4       \        \        VVV 3R l4       R# )rC   c                  (   < SP                  SS 4      # r   r   rS  s   r"   rV  9TestArrayAssertLess.test_nan_noncompare.<locals>.<lambda>  r  r%   c                  (   < SP                  S S4      # r   r   rS  s   r"   rV  r$    r  r%   c                  (   < SP                  SS 4      # r   r   rZ  s   r"   rV  r$    r  r%   c                  (   < SP                  S S4      # r   r   rZ  s   r"   rV  r$    r  r%   Nr]  r^  s   f@@@r"   test_nan_noncompare'TestArrayAssertLess.test_nan_noncompare  sp    xxxx{xx$%n&KLn&KLn&KLn&KLr%   c                "  a aaa \         P                  ! . R
O4      o\         P                  ! \         P                  4      o\        \        VV V3R l4       \        \        VV V3R l4       \         P                  ! R R\         P                  .4      o\        \        VV V3R l4       \        \        VV V3R l4       \         P                  ! RR\         P                  .4      oS P                  SS4       \        \        V VV3R l4       R	# )r  r  c                  (   < SP                  SS 4      # r   r   rT  r   rt   s   r"   rV  ?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>      d.?.?4.Hr%   c                  (   < SP                  S S4      # r   r   r,  s   r"   rV  r-        d.?.?a.Hr%   c                  (   < SP                  SS 4      # r   r   r,  s   r"   rV  r-    r.  r%   c                  (   < SP                  S S4      # r   r   r,  s   r"   rV  r-    r0  r%   r   r   c                  (   < S P                  SS4      # r   r   r4  s   r"   rV  r-    r  r%   N)r  r  r  )r,   r-   r   r   r'   r   )r   rT  rt   ru   s   f@@@r"   test_nan_noncompare_array-TestArrayAssertLess.test_nan_noncompare_array  s    HH_%xxn&HIn&HIHHc3'(n&HIn&HIHHc3'(!Qn&EFr%   c                  a aa \         P                  ! ^4      o\         P                  ! \         P                  4      oS P                  SS4       S P                  S) S4       S P                  S) S4       \	        \
        VVV 3R l4       \	        \
        VVV 3R l4       \	        \
        VV 3R l4       \	        \
        VV 3R l4       \	        \
        VV 3R l4       R# )rC   c                  (   < SP                  S S4      # r   r   r[  rU  r   s   r"   rV  6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>  r  r%   c                  *   < SP                  SS ) 4      # r   r   r8  s   r"   rV  r9        d.?.?te.Lr%   c                  (   < SP                  S S 4      # r   r   r[  r   s   r"   rV  r9    r  r%   c                  *   < SP                  S S ) 4      # r   r   r=  s   r"   rV  r9    r;  r%   c                  ,   < SP                  S ) S ) 4      # r   r   r=  s   r"   rV  r9    s    d.?.?u.Mr%   N)r,   r-   r   r   r   r'   )r   r[  rU  s   f@@r"   test_inf_compare$TestArrayAssertLess.test_inf_compare  s    xx{xx$%4%&4%&n&KLn&LMn&KLn&LMn&MNr%   c                  a aa \         P                  ! R R\         P                  .4      o\         P                  ! \         P                  4      o\        \        VV V3R l4       \        \        VV V3R l4       \        \        VV V3R l4       \        \        VV V3R l4       \        \        VV V3R l4       S P                  S) S4       R# )r  r  c                  (   < SP                  SS 4      # r   r   r[  r   rt   s   r"   rV  <TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>  r.  r%   c                  (   < SP                  S S4      # r   r   rD  s   r"   rV  rE    r0  r%   c                  *   < SP                  SS ) 4      # r   r   rD  s   r"   rV  rE    s    d.?.?D5.Ir%   c                  ,   < SP                  S) S ) 4      # r   r   rD  s   r"   rV  rE    s    d.?.?TE.Jr%   c                  ,   < SP                  S ) S) 4      # r   r   rD  s   r"   rV  rE    s    d.?.?r.Jr%   N)r,   r-   r   r   r'   r   )r   r[  rt   s   f@@r"   test_inf_compare_array*TestArrayAssertLess.test_inf_compare_array  sw    HHc3'(xxn&HIn&HIn&IJn&JKn&JK4%#r%   c                b   \         P                  ! ^4      p\         P                  ! R4      pV P                  W4       \        P
                  ! \        4      ;_uu_ 4        V P                  WRR7       RRR4       \         P                  ! W!P                  4      pV P                  W4       \        P
                  ! \        4      ;_uu_ 4        V P                  WP                  \         P                  4      RR7       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; iz)Test the behavior of the `strict` option.Tr   NrJ   )r,   zerosr  r   rn   ro   r'   broadcast_tor
  astyper   r4  s   &  r"   test_strictTestArrayAssertLess.test_strict  s    HHQKGGBK!]]>**a40 +OOAww'!]]>**a"**!5dC +*	 +* +**s    D
1D
D	D.	r   N)rK   rL   rM   rN   rV   r  r  r  r  r  r   r(  r4  r@  rJ  rQ  rO   rP   rQ   s   @r"   r  r  4  sN     .$*GG G($:$>MG"O	$
D 
Dr%   r  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )	TestWarnsi  c                B   R  p\         P                  R,          P                  R,          p\        \	        \
        V4      ^4       \         P                  R,          P                  p\        \        \        V4       \        \        R ^4      ^4       \        W#R4       R# )c                  2    \         P                  ! R 4       ^# yowarningswarnrJ   r%   r"   fTestWarns.test_warn.<locals>.f   s    MM$r%   rZ  NNNc                     V # r   rJ   )rt   s   &r"   rV  %TestWarns.test_warn.<locals>.<lambda>	  s    !r%   .assert_warns does not preserver warnings stateN)	sysmodulesfiltersr   r   UserWarningr   r'   r   )r   r\  before_filtersafter_filterss   &   r"   	test_warnTestWarns.test_warn  sv    	 Z088;\+q115J/77n&8!<'Q7; 	^E	Gr%   c                h   \         P                  R ,          P                  R,          p\        \        4      ;_uu_ 4        \
        P                  ! R4       RRR4       \         P                  R ,          P                  pR p\        \        V4       \        WR4       R#   + '       g   i     LR; i)rZ  r^  rX  Nc                      \        4       ;_uu_ 4        \        P                  ! R 4       RRR4       R#   + '       g   i     R# ; irX  N)r   rZ  r[  rJ   r%   r"   no_warnings3TestWarns.test_context_manager.<locals>.no_warnings  s&    #%%d# &%%%s	   4A	ra  )
rb  rc  rd  r   re  rZ  r[  r   r'   r   )r   rf  rg  rm  s   &   r"   test_context_managerTestWarns.test_context_manager  ss    Z088;+&&MM$ 'J/77	$ 	nk2^E	G '&s    B!!B1	c           	     
   R
R lp\        \        V^R7      ^8X  g   Q h\        P                  ! \        4      ;_uu_ 4       p\        \        RR7      ;_uu_ 4        \
        P                  ! R\        4       RRR4       RRR4       R\        X4      9   g   Q hR\        V4      9   g   Q h\        P                  ! \        4      ;_uu_ 4       p\        \        RR	7      ;_uu_ 4        \
        P                  ! R\        4       RRR4       RRR4       R\        V4      9   g   Q hR\        V4      9  g   Q hR#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ld; i  + '       g   i     Lo; i)r   c                 >    \         P                  ! R 4       W,           # rW  rY  )r    r!   s   &&r"   r\  TestWarns.test_args.<locals>.f  s    MM$5Lr%   r!   Arl   BNr   zpytest.warns)wrong)r   rC   )r   re  rn   ro   RuntimeErrorrZ  r[  rp   )r   r\  excs   &  r"   	test_argsTestWarns.test_args  s    	 Kb1R777]]<((Ck55c;/ 6 ) S)))S)))]]<((Ck55c;/ 6 ) S)))SX--- 65 )( 65 )(sH   ED9	7EE2'E	E29E	EE	E/*E22F	c                &   R  pRp\         P                  ! 4       ;_uu_ 4        \         P                  ! R\        4        \	        \
        V4       RpRRR4       V'       d   \        R4      hR#   \         d     L*i ; i  + '       g   i     L6; i)c                  <    \         P                  ! R \        4       R# rl  )rZ  r[  DeprecationWarningrJ   r%   r"   r\  ,TestWarns.test_warn_wrong_warning.<locals>.f4  s    MM$ 23r%   FerrorTNz#wrong warning caught by assert_warn)rZ  catch_warningssimplefilterr~  r   re  r'   )r   r\  faileds   &  r"   test_warn_wrong_warning!TestWarns.test_warn_wrong_warning3  sz    	4 $$&&!!'+=>[!, '  !FGG  &  '&s)   B  A//A=:B <A==B  B	rJ   N)
rK   rL   rM   rN   rh  ro  rz  r  rO   rP   rQ   s   @r"   rT  rT    s"     G G.*H Hr%   rT  c                   \   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tRtV tR# )TestAssertAllcloseiE  c                   R pRp\        W^R7       \        \        \         W4       Rp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        \        W4       RRR4       ^ pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        \        W$4       RRR4       Rp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        \        WB4       RRR4       \        P                  ! WW.4      p\        P                  ! WW.4      p\        WV^R7       \        \        \         WV4       VR,          VR&   \        WV4       \        \        \         WVRR7       \        ^^
R	R7       \        \        \         ^
^R	R7       \        P                  ! WW.4      p\        P                  ! WW.4      pR
p\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        \        Wg4       RRR4       Rp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        \        Wv4       RRR4       R#   + '       g   i     EL#; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     R# ; i)gMbP?g&.>atolzMismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 0.001
Max relative difference among violations: 999999.rl   NzMismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.e-09
Max relative difference among violations: infzMismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.e-09
Max relative difference among violations: 1.)rtolg      ?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.g1  ?r8  )	r   r   r'   rn   ro   rr   rs   r,   r-   )r   rt   ru   rx   r  r    r!   r`   s   &       r"   rK  TestAssertAllclose.test_simpleG  s   1%noq<L ]]><1HIIA! J H ]]><1HIIA! JG ]]><1HIIA! J HHaA\"HHaA\"1%noq<X"noq$G2C(nor13GHHaA\"HHaA\"H ]]><1HIIA! JG ]]><1HIIA! JIQ JII JII JII* JI JIIs<   !J1J?J/#K1KJ	J,	/K 	K	K'	c                    \         P                  ! \         P                  ! \         P                  4      P                  .\         P                  R 7      p\        W4       R# )r<   N)r,   r-   iinfoint_minr   r?   s   & r"   test_min_intTestAssertAllclose.test_min_int|  s4    HHbhhrww'++,BGG<r%   c                *   \         P                  ! . RO4      p\         P                  ! . RO4      pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        \        W4       RRR4       R#   + '       g   i     R# ; i)rC   zzMismatched elements: 1 / 4 (25%)
Max absolute difference among violations: 1
Max relative difference among violations: 0.5rl   N)rC   rC   rC   rC   )rC   rC   rC   rE   r,   r-   rn   ro   r'   rr   rs   r   r   s   &   r"   test_report_fail_percentage.TestAssertAllclose.test_report_fail_percentage  sZ    HH\"HH\"H ]]><1HIIA! JIII   +BB	c                    \         P                  ! \         P                  .4      p\         P                  ! \         P                  .4      p\        WR R7       R# )T	equal_nanN)r,   r-   r   r   r   s   &  r"   test_equal_nan!TestAssertAllclose.test_equal_nan  s4    HHbffXHHbffX-r%   c                    \         P                  ! \         P                  .4      p\         P                  ! \         P                  .4      p\        \        \
        WR R7       R# )Fr  N)r,   r-   r   r   r'   r   r   s   &  r"   test_not_equal_nan%TestAssertAllclose.test_not_equal_nan  s8    HHbffXHHbffXnoquMr%   c                    \         P                  ! \         P                  .4      p\         P                  ! \         P                  .4      p\        W4       \	        W4       \        W4       \        W4       R # r   )r,   r-   r   r
   r   r   r   r   s   &  r"   test_equal_nan_default)TestAssertAllclose.test_equal_nan_default  sL     HHbffXHHbffX1 !!'!r%   c                *   \         P                  ! ^ ^.4      p\         P                  ! ^ ^.4      pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        \        W4       RRR4       R#   + '       g   i     R# ; i)r   z-Max relative difference among violations: 0.5rl   Nr  r   s   &   r"   test_report_max_relative_error1TestAssertAllclose.test_report_max_relative_error  s]    HHaVHHaVF]]><1HIIA! JIIIr  c                R    \         P                  ! . RO.RR7      p\        W4       R# )rC   zm8[ns]r<   N)rC   rE   rF   r  )r,   r-   r   r?   s   & r"   test_timedelta!TestAssertAllclose.test_timedelta  s    HH&'x8r%   c                6   \         P                  ! . RORR7      p\         P                  ! . RORR7      pRp\        P                  ! \        \
        P                  ! V4      R7      ;_uu_ 4        \        W^R7       RRR4       R#   + '       g   i     R# ; i)	zJCheck the message is formatted correctly when overflow can occur
(gh21768)uint8r<   z+Max absolute difference among violations: 4rl   r  N)r   rC   r  )r}   r}   r}   )r,   asarrayrn   ro   r'   rr   rs   r   rJ  s   &   r"   test_error_message_unsigned.TestAssertAllclose.test_error_message_unsigned  s]     JJy0JJy0D]]><1HIIAq) JIIIs   /BB	c                   \         P                  ! ^4      p\         P                  ! R4      p\        W4       \        P                  ! \
        4      ;_uu_ 4        \        WRR7       RRR4       \        W4       \        P                  ! \
        4      ;_uu_ 4        \        WP                  \         P                  4      RR7       RRR4       R#   + '       g   i     Lr; i  + '       g   i     R# ; irM  )r,   r  r   rn   ro   r'   rP  r   r4  s   &  r"   rQ  TestAssertAllclose.test_strict  s    GGAJGGBK]]>**A. +]]>**Axx

3DA +* +* +**s   C+C%C"	%C6	rJ   N)rK   rL   rM   rN   rK  r  r  r  r  r  r  r  r  rQ  rO   rP   rQ   s   @r"   r  r  E  s@     3"j
".N
	"
*	B 	Br%   r  c                   n   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tRtV tR# )TestArrayAlmostEqualNulpi  c                   ^p\         P                  ! R^^2\         P                  R7      p^
V,          p\         P                  V) V3,          p\         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,           p\        W$V4       \         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,
          p\        W$V4       R#    r<   r   N	r,   linspacefloat64r_finfor=   epsr	   epsnegr   nulprt   r  ru   r  s   &     r"   test_float64_pass*TestArrayAlmostEqualNulp.test_float64_pass  s     KKR2::6EEE1"a%L hhqww##C$##&qT2 !''"))F
T!B&&&qT2r%   c                   ^p\         P                  ! R^^2\         P                  R7      p^
V,          p\         P                  V) V3,          p\         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,           p\        \        \        W$V4       \         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,
          p\        \        \        W$V4       R# r  r,   r  r  r  r  r=   r  r   r'   r	   r  r  s   &     r"   test_float64_fail*TestArrayAlmostEqualNulp.test_float64_fail      KKR2::6EEE1"a%Lhhqww##C$##n&DD	" !''"))F
T!B&&n&DD	"r%   c                x   \         P                  ! R 4      p\         P                  ! \         P                  \         P                  R7      P                  \         P                  4      pW!,          pVP                  \         P                  4      pVP                  \         P                  4      p\        WE^ 4       R# )l    r<   N)r,   uint64r-   r   r  r   r   )r   offsetnan1_i64nan2_i64nan1_f64nan2_f64s   &     r"   test_float64_ignore_nan0TestArrayAlmostEqualNulp.test_float64_ignore_nan  so     :&88BFF"**5::299E$==,==,X3r%   c                   ^p\         P                  ! R^^2\         P                  R7      p^
V,          p\         P                  V) V3,          p\         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,           p\        W$V4       \         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,
          p\        W$V4       R# r  	r,   r  r   r  r  r=   r  r	   r  r  s   &     r"   test_float32_pass*TestArrayAlmostEqualNulp.test_float32_pass  s    KKR2::6EEE1"a%Lhhqww##C$##&qT2!''"))F
T!B&&&qT2r%   c                   ^p\         P                  ! R^^2\         P                  R7      p^
V,          p\         P                  V) V3,          p\         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,           p\        \        \        W$V4       \         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,
          p\        \        \        W$V4       R# r  r,   r  r   r  r  r=   r  r   r'   r	   r  r  s   &     r"   test_float32_fail*TestArrayAlmostEqualNulp.test_float32_fail  r  r%   c                x   \         P                  ! R 4      p\         P                  ! \         P                  \         P                  R7      P                  \         P                  4      pW!,          pVP                  \         P                  4      pVP                  \         P                  4      p\        WE^ 4       R# )i  r<   N)r,   uint32r-   r   r   r   r   )r   r  nan1_i32nan2_i32nan1_f32nan2_f32s   &     r"   test_float32_ignore_nan0TestArrayAlmostEqualNulp.test_float32_ignore_nan  so     6"88BFF"**5::299E$==,==,X3r%   c                   ^p\         P                  ! R^^
\         P                  R7      p^
V,          p\         P                  V) V3,          p\         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,           p\        W$V4       \         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,
          p\        W$V4       R# r  r<   r   N)	r,   r  float16r  r  r=   r  r	   r  r  s   &     r"   test_float16_pass*TestArrayAlmostEqualNulp.test_float16_pass  s    KKAr4EEE1"a%Lhhqww##C$##&qT2!''"))F
T!B&&&qT2r%   c                   ^p\         P                  ! R^^
\         P                  R7      p^
V,          p\         P                  V) V3,          p\         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,           p\        \        \        W$V4       \         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,
          p\        \        \        W$V4       R# r  )r,   r  r  r  r  r=   r  r   r'   r	   r  r  s   &     r"   test_float16_fail*TestArrayAlmostEqualNulp.test_float16_fail-  s    KKAr4EEE1"a%Lhhqww##C$##n&DD	" !''"))F
T!B&&n&DD	"r%   c                x   \         P                  ! ^4      p\         P                  ! \         P                  \         P                  R7      P                  \         P                  4      pW!,          pVP                  \         P                  4      pVP                  \         P                  4      p\        WE^ 4       R# )   r<   N)r,   uint16r-   r   r  r   r   )r   r  nan1_i16nan2_i16nan1_f16nan2_f16s   &     r"   test_float16_ignore_nan0TestArrayAlmostEqualNulp.test_float16_ignore_nan=  sn     488BFF"**5::299E$==,==,X3r%   c                   ^p\         P                  ! R^^2\         P                  R7      p^
V,          p\         P                  V) V3,          pW"R,          ,           p\         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,           p\        W2VR,          ,           V4       \        W5VR,          ,           V4       W"V,          V,          R,          ,           p\        W5VR,          ,           V4       \         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,
          p\        W2VR,          ,           V4       \        W5VR,          ,           V4       W"V,          V,          R,          ,
          p\        W5VR,          ,           V4       R# r  r<                 ?r   r   Nr  r  r   r  rt   xir  ru   r  s   &      r"   test_complex128_pass-TestArrayAlmostEqualNulp.test_complex128_passH  s:   KKR2::6EEE1"a%LRZhhqww##C$##&rq2v:t<&rq2v:t< C$##&rq2v:t<!''"))F
T!B&&&rq2v:t<&rq2v:t<F
T!B&&&rq2v:t<r%   c                   ^p\         P                  ! R^^2\         P                  R7      p^
V,          p\         P                  V) V3,          pW"R,          ,           p\         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,           p\        \        \        W2VR,          ,           V4       \        \        \        W5VR,          ,           V4       W"V,          V,          ,           p\        \        \        W5VR,          ,           V4       \         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,
          p\        \        \        W2VR,          ,           V4       \        \        \        W5VR,          ,           V4       W"V,          V,          ,
          p\        \        \        W5VR,          ,           V4       R# r  r<   r  r   Nr  r  r  s   &      r"   test_complex128_fail-TestArrayAlmostEqualNulp.test_complex128_fail_  sb   KKR2::6EEE1"a%LRZhhqww##C$##n&Da"f*d	,n&Da"f*d	, C$n&Da"f*d	, !''"))F
T!B&&n&Da"f*d	,n&Da"f*d	,F
T!!n&Da"f*d	,r%   c                   ^p\         P                  ! R^^2\         P                  R7      p^
V,          p\         P                  V) V3,          pW"R,          ,           p\         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,           p\        W2VR,          ,           V4       \        W5VR,          ,           V4       W"V,          V,          R,          ,           p\        W5VR,          ,           V4       \         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,
          p\        W2VR,          ,           V4       \        W5VR,          ,           V4       W"V,          V,          R,          ,
          p\        W5VR,          ,           V4       R# r  r  r  s   &      r"   test_complex64_pass,TestArrayAlmostEqualNulp.test_complex64_pass|  s8   KKR2::6EEE1"a%LRZhhqww##C$##&rq2v:t<&rq2v:t<C$##&rq2v:t<!''"))F
T!B&&&rq2v:t<&rq2v:t<F
T!B&&&rq2v:t<r%   c                   ^p\         P                  ! R^^2\         P                  R7      p^
V,          p\         P                  V) V3,          pW"R,          ,           p\         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,           p\        \        \        W2VR,          ,           V4       \        \        \        W5VR,          ,           V4       W"V,          V,          ,           p\        \        \        W5VR,          ,           V4       \         P                  ! VP
                  4      P                  pW"V,          V,          R,          ,
          p\        \        \        W2VR,          ,           V4       \        \        \        W5VR,          ,           V4       W"V,          V,          ,
          p\        \        \        W5VR,          ,           V4       R# r  r  r  s   &      r"   test_complex64_fail,TestArrayAlmostEqualNulp.test_complex64_fail  s`   KKR2::6EEE1"a%LRZhhqww##C$##n&Da"f*d	,n&Da"f*d	,C$n&Da"f*d	, !''"))F
T!B&&n&Da"f*d	,n&Da"f*d	,F
T!!n&Da"f*d	,r%   rJ   N)rK   rL   rM   rN   r  r  r  r  r  r  r  r  r  r  r  r  r   rO   rP   rQ   s   @r"   r  r    sK     3$" 	43" 	43" 	4=.,:=*, ,r%   r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	TestULPi  c                ^    \         P                  P                  ^
4      p\        W^ R7       R# )
   maxulpN)r,   randomrandnr   )r   rt   s   & r"   
test_equalTestULP.test_equal  s    IIOOBQ!,r%   c                   \         P                  ! ^
4      P                  \         P                  4      pVR\         P                  P                  ^
4      P                  \         P                  4      ,          ,          p\         P                  ! \         P                  4      P                  p\        WV,           ^R7       R# r  g{Gz?r  N)	r,   r  rP  r   r  r	  r  r  r   r   rt   r  s   &  r"   test_singleTestULP.test_single  so    GGBKrzz*	TBIIOOB'..rzz:::hhrzz"&&QC3r%   c                   \         P                  ! ^
4      P                  \         P                  4      pVR\         P                  P                  ^
4      P                  \         P                  4      ,          ,          p\         P                  ! \         P                  4      P                  p\        WV,           ^R7       R# r  )	r,   r  rP  r  r  r	  r  r  r   r  s   &  r"   test_doubleTestULP.test_double  so    GGBKrzz*	TBIIOOB'..rzz:::hhrzz"&&QC4r%   c                @   \         P                  \         P                  3 Fy  p\         P                  ! \         P                  .4      P                  V4      p\         P                  ! \         P                  ! V4      P                  .4      p\        W#^R7       K{  	  R# )   r  N)	r,   r   r  r-   r   rP  r  maxr   )r   dtr   bigs   &   r"   rg  TestULP.test_inf  sa    ::rzz*B((BFF8$++B/C((BHHRL,,-.C #6 +r%   c                  aaaaaaa \         P                  \         P                  3 EF  pV\         P                  8X  d   R oMRo\         P                  ! \         P                  .4      P                  V4      o\         P                  ! \         P                  .4      P                  V4      o\         P                  ! \         P                  ! V4      P                  .4      o\         P                  ! \         P                  ! V4      P                  .4      o\         P                  ! R.4      P                  V4      o\         P                  ! R	.4      P                  V4      o\        \        VVV3R l4       \        \        VVV3R l4       \        \        VVV3R l4       \        \        VVV3R l4       \        \        VVV3R l4       EK  	  R# )
g    .Ag   mBr   c                      < \        SS SR 7      # r  r   )r   r  r   s   r"   rV  "TestULP.test_nan.<locals>.<lambda>      "6sC>D#Fr%   c                      < \        SS SR 7      # r  r  )r  r  r   s   r"   rV  r    r  r%   c                      < \        SSS R 7      # r  r  )r  r   tinys   r"   rV  r        "6sD>D#Fr%   c                      < \        SSS R 7      # r  r  )r  r   zeros   r"   rV  r    r#  r%   c                      < \        SSS R 7      # r  r  )r  r   nzeros   r"   rV  r    s    "6sE>D#Fr%   Ng       )r,   r   r  r-   r   rP  r   r  r  r"  r   r'   )	r   r  r  r   r  r   r'  r"  r%  s	   & @@@@@@@r"   r_  TestULP.test_nan  s>   ::rzz*BRZZ((BFF8$++B/C((BFF8$++B/C((BHHRL,,-.C88RXXb\../0D88SE?))"-DHHdV$++B/E.FG .FG .FG .FG .FG/ +r%   rJ   N)rK   rL   rM   rN   r
  r  r  rg  r_  rO   rP   rQ   s   @r"   r  r    s%     -457G Gr%   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )TestStringEquali  c                .   \        R R 4       \        RR4       \        P                  ! \        4      ;_uu_ 4       p\        RR4       RRR4       \	        XP
                  4      p\        VR4       \        \        R 4       R#   + '       g   i     LD; i)hellozhello
multilinezfoo
barz	hello
barNz%Differences in strings:
- foo
+ helloc                      \        R R4      # )ra   r,  r   rJ   r%   r"   rV  -TestStringEqual.test_simple.<locals>.<lambda>  s    1%Ar%   )r   rn   ro   r'   rp   rq   r   r   )r   rv   rw   s   &  r"   rK  TestStringEqual.test_simple  sh    GW-.0BC]]>**h
L9 +(..!SCDnA	C +*s   BB	c                @    \        R R 4       \        \        R 4       R# )za+*bc                      \        R R4      # )aaaza+br.  rJ   r%   r"   rV  ,TestStringEqual.test_regex.<locals>.<lambda>  s    1%?r%   N)r   r   r'   rG   s   &r"   
test_regexTestStringEqual.test_regex  s    FF+n?	Ar%   rJ   N)rK   rL   rM   rN   rK  r5  rO   rP   rQ   s   @r"   r*  r*    s     
CA Ar%   r*  c                      V P                   p\        V4      pR V9   d
   V^,          p\        W14       R#   \         d    / p L7i ; i)versionN)__warningregistry__AttributeErrorlenr   )modn_in_context	mod_warns	num_warnss   &&  r"   assert_warn_len_equalr@    sP    
++	 III 	Q	)#   	s   6 AAc                  ~     ! R  R4      p V ! 4       p\        V^ R7        ! R R4      p V ! 4       p\        V^R7       R# )c                       ] tR tRtRtR# )/test_warn_len_equal_call_scenarios.<locals>.modi  rJ   N)rK   rL   rM   rN   rO   rJ   r%   r"   r<  rC    s    r%   r<  )r<  r=  c                   &   a  ] tR tRt o R tRtV tR# )rC  i"  c                    R ^R^/V n         R# )warning1warning2Nr9  rG   s   &r"   __init__8test_warn_len_equal_call_scenarios.<locals>.mod.__init__#  s    (2A(2A(7D$r%   rH  N)rK   rL   rM   rN   rI  rO   rP   rQ   s   @r"   r<  rC  "  s     	7 	7r%   N)r@  )r<  mod_insts     r"   "test_warn_len_equal_call_scenariosrL    sB      uHh'(*
7 7
 uHh'(*r%   c                      \         P                  \        ,          p  V P                  P	                  4        V #   \
         d     T # i ; ir   )rb  rc  rK   r9  clearr:  my_mods    r"   _get_fresh_modrQ  ,  sI    [["F""((*
 M	   	M	s   9 AAc                     \        4       p \        \        V R / 4      / 4       \        V .R7      ;_uu_ 4        \        P
                  ! R4       \        P                  ! R4       RRR4       \        V P                  / 4       \        4       ;_uu_ 4        \        P
                  ! R4       \        P                  ! R4       RRR4       \        V ^ 4       R^R^/V n        \        V .R7      ;_uu_ 4        \        P
                  ! R4       \        P                  ! R4       RRR4       \        V ^4       \        4       ;_uu_ 4        \        P
                  ! R4       \        P                  ! R4       RRR4       \        V ^ 4       R#   + '       g   i     EL0; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     LX; i)r9  )rc  ignoreSome warningNrF  rG  zAnother warning)	rQ  r   getattrr   rZ  r  r[  r9  r@  rO  s    r"   test_clear_and_catch_warningsrV  8  sA   F!6;R@	!6(	3	3h'n% 
4 ++R0 
"	#	#h'n% 
$ &!$ #-a",a"1F 
"6(	3	3h''( 
4 &!$ 
"	#	#h''( 
$ &!$3 
4	3	3 
$	# 
4	3 
$	#s/   -F-F5-F2-GF	F/	2G	G	c                     \        4       p \        \        V R / 4      / 4       R p\        V ^ 4       \	        4       ;_uu_ 4       pVP                  \        4       VP                  \        P                  P                  R7       \        P                  ! R4       V! 4        RRR4       \        \        XP                  4      ^4       \        VP                  ^ ,          P                  P                   ^ ,          R4       \        V ^ 4       \	        4       pVP                  V R7       V;_uu_ 4        \        P                  ! R4       RRR4       \        V ^ 4       VP                  V R7       V;_uu_ 4        \        P                  ! R4       RRR4       \        V ^ 4       \	        4       ;_uu_ 4        \        P"                  ! R4       \        P                  ! R4       RRR4       \        V ^ 4       R#   + '       g   i     ELa; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     LX; i)r9  c                  >    R  p \         P                  ! V ^ ^ .4       R# )c                 6    \         P                  ! R ^R7       V # )zSome warning 2
stacklevelrY  arrs   &r"   r[  Ftest_suppress_warnings_module.<locals>.warn_other_module.<locals>.warn`  s    MM*q9Jr%   Nr,   apply_along_axisr[  s    r"   warn_other_module8test_suppress_warnings_module.<locals>.warn_other_module]      	 	D!aS)r%   modulerT  NrS  )rQ  r   rU  r@  r   recordre  filterr,   lib_shape_base_implrZ  r[  r;  logmessager   r  )rP  rb  sups      r"   test_suppress_warnings_modulern  X  sw   F!6;R@* &!$			

; 	

"&&11
2n% 
 SWWq!##((+^<&!$

CJJfJ	n% 
&!$JJfJ	n% 
&!$ 
		h'n% 
 &!$9 
		 

 

 
	s1   AG81H8H5-H28H		H	H/	2I	c                  b   \        4       p \        \        V R / 4      / 4       \        4       ;_uu_ 4       pVP	                  \
        4       \        P                  ! R4       RRR4       \        V ^ 4       \        4       pVP	                  \
        4       V;_uu_ 4        \        P                  ! R4       RRR4       \        V ^ 4       VP	                  V R7       V;_uu_ 4        \        P                  ! R4       RRR4       \        V ^ 4       \        4       ;_uu_ 4        \        P                  ! R4       \        P                  ! R4       RRR4       \        V ^ 4       R#   + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     LX; i)r9  rT  Nre  rS  )
rQ  r   rU  r   rh  re  rZ  r[  r@  r  )rP  rm  s     r"   test_suppress_warnings_typerp    s   F!6;R@ 
		

;n% 
 &!$

CJJ{	n% 
&!$JJfJ	n% 
&!$ 
		h'n% 
 &!$' 
		 

 

 
	s/   ,E$E8$F!-F$E5	8F	F	F.	c                  R   \        4       p V P                  \        4       V R  4       p\        P                  ! RR7      ;_uu_ 4       p\        P
                  ! R4       V! \        4       V! \        4       \        \        V4      ^4       RRR4       R#   + '       g   i     R# ; i)c                 4    \         P                  ! R V 4       R# )rT  NrY  )categorys   &r"   r[  7test_suppress_warnings_decorate_no_record.<locals>.warn  s    nh/r%   T)rg  alwaysN)	r   rh  re  rZ  r  r  RuntimeWarningr   r;  )rm  r[  ws      r"   )test_suppress_warnings_decorate_no_recordrx    sx    

CJJ{0 	0 
	 	 	-	-h'[^SVQ	 
.	-	-	-s   ABB&	c            	         \        4       p V P                  4       pV ;_uu_ 4        V P                  R R7      pV P                  RR7       \        P                  ! R4       \        P                  ! R4       \        P                  ! R 4       \        \        V P                  4      ^4       \        \        V4      ^4       \        \        V4      ^4       \        V^ ,          P                  P                  ^ ,          R 4       RRR4       V ;_uu_ 4        V P                  R R7      pV P                  RR7       \        P                  ! R4       \        P                  ! R4       \        P                  ! R 4       \        \        V P                  4      ^4       \        \        V4      ^4       \        \        V4      ^4       \        V^ ,          P                  P                  ^ ,          R 4       RRR4       \        4       ;_uu_ 4       p V P                  4        \        4       ;_uu_ 4       pVP                  RR7       \        P                  ! R4       \        P                  ! R4       \        \        VP                  4      ^4       RRR4       \        \        V P                  4      ^4       RRR4       R#   + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L`; i  + '       g   i     R# ; i)zSome other warning 2)rl  rT  Some other warningN)
r   rg  rh  rZ  r[  r   r;  rk  rl  r   )rm  log1log2sup2s       r"   test_suppress_warnings_recordr~    s   

C::<D	zz"8z9

>
*n%*+,-S\1%SY"SY"T!W__))!,.DE 
 
zz"8z9

>
*n%*+,-S\1%SY"SY"T!W__))!,.DE 
 
		

  DKKK/MM.)MM./TXX*	 !
 	S\1% 
	5 
 
 !  
		s>   CJ?CK#K90AK&	'K9?K	K#	&K61K99L
	c            	      Z   R  p \        4       ;_uu_ 4       pVP                  4        \        R4      ;_uu_ 4        \        ^4       F  p\        P                  ! R4       K  	  RRR4       \        \        VP                  4      ^4       RRR4       \        4       ;_uu_ 4       pVP                  4        \        R4      ;_uu_ 4        \        ^4       F/  p\        P                  ! R4       \        P                  ! R4       K1  	  RRR4       \        \        VP                  4      ^4       RRR4       \        4       ;_uu_ 4       pVP                  4        \        R4      ;_uu_ 4        \        ^4       F6  p\        P                  ! R4       \        P                  ! R4       V ! 4        K8  	  RRR4       \        \        VP                  4      ^4       RRR4       \        4       ;_uu_ 4       pVP                  4        \        R4      ;_uu_ 4        \        ^4       F6  p\        P                  ! R4       \        P                  ! R4       V ! 4        K8  	  RRR4       \        \        VP                  4      ^4       RRR4       R#   + '       g   i     EL4; i  + '       g   i     EL!; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL5; i  + '       g   i     EL"; i  + '       g   i     L; i  + '       g   i     R# ; i)c                  >    R  p \         P                  ! V ^ ^ .4       R# )c                 6    \         P                  ! R ^R7       V # )rT  rZ  rY  r\  s   &r"   r[  Jtest_suppress_warnings_forwarding.<locals>.warn_other_module.<locals>.warn  s    MM.Q7Jr%   Nr_  ra  s    r"   rb  <test_suppress_warnings_forwarding.<locals>.warn_other_module  rd  r%   ru  rT  Nlocationrf  oncerz  )r   rg  rangerZ  r[  r   r;  rk  )rb  rm  is      r"   !test_suppress_warnings_forwardingr    s   * 
		

x((1Xn-  ) 	S\1% 
 
		

z**1Xn-n-  +
 	S\1% 
 
		

x((1Xn-n-!#  ) 	S\1% 
 
		

v&&1Xn-23!#  ' 	S\1% 
	3 )(( 
		 +** 
		 )(( 
		 '& 
		s   $J")J	#'J"$$K
?J6	'K
$K2,AK	2'K23$LAL	'LJ	J""J3	6K	K

K	K/)	K22L	LLL*	c            	      R   \        4       ;_uu_ 4       p \        P                  P                  V R 4      p\	        VR4      ;_uu_ 4         RRR4       RRR4       \        \        P                  P                  X 4      '       * 4       Rp \        4       ;_uu_ 4       p \        h  + '       g   i     La; i  + '       g   i     Ll; i  + '       g   i     M; i  \         d    Rp Mi ; i\        T4       \        \        P                  P                  T 4      '       * 4       R# )tmprw  NFT)r   ospathjoinopenr   isdir
ValueError)tdirfpathraiseds      r"   test_tempdirr    s    	dT5)%  
 d##$FYY$  
 Y FOd##$sM   5B6B#	
B6
C C	#B3.B66C		C	C C C,+C,c            	         \        4       ;_uu_ 4       p \        V R 4      ;_uu_ 4         RRR4       RRR4       \        \        P                  P                  X 4      '       * 4       Rp \        4       ;_uu_ 4       p \        h  + '       g   i     La; i  + '       g   i     Ll; i  + '       g   i     M; i  \         d    Rp Mi ; i\        T4       \        \        P                  P                  T 4      '       * 4       R# )rw  NFT)r   r  r   r  r  isfiler  )r  r  s     r"   test_temppathr    s    	u%  
 u%%&FZZ5  
 Z FOu%%&sK   BB	B*B< <B)BBB&	)B9	4B< 9B< <CCc                   >    ] tR tRt]P
                  ] ,          3tRtR# )my_cacwi)  rJ   N)rK   rL   rM   rN   rb  rc  class_modulesrO   rJ   r%   r"   r  r  )  s    [[*,Mr%   r  c                      \        4       p \        4       ;_uu_ 4        \        P                  ! R 4       \        P                  ! R4       RRR4       \        V P                  / 4       R#   + '       g   i     L(; i)rS  rT  N)rQ  r  rZ  r  r[  r   r9  rO  s    r"   %test_clear_and_catch_warnings_inheritr  .  sJ    F	h'n% 
 ++R0 
s   -A**A:	zPython lacks refcounts)reasonc                   h   a  ] tR tRt o RtR tR t]P                  P                  R 4       t
RtV tR# )TestAssertNoGcCyclesi7  zTest assert_no_gc_cycles c                    R  p\        4       ;_uu_ 4        V! 4        RRR4       \        V4       R#   + '       g   i     L; i)c                  ,    . p V P                  . 4       V # r   appendrt  s    r"   no_cycle2TestAssertNoGcCycles.test_passes.<locals>.no_cycle<  s    AHHRLHr%   N)r   )r   r  s   & r"   test_passes TestAssertNoGcCycles.test_passes;  s/    	
 !""J # 	H% #"s	   3A	c           	     Z   R  p\        \        4      ;_uu_ 4        \        4       ;_uu_ 4        V! 4        RRR4       RRR4       \        \        4      ;_uu_ 4        \        V4       RRR4       R#   + '       g   i     LE; i  + '       g   i     LP; i  + '       g   i     R# ; i)c                  N    . p V P                  V 4       V P                  V 4       V # r   r  )r    s    r"   
make_cycle5TestAssertNoGcCycles.test_asserts.<locals>.make_cycleG  s"    AHHQKHHQKHr%   N)r   r'   r   )r   r  s   & r"   test_asserts!TestAssertNoGcCycles.test_assertsF  sg    	 >**$&& ' + >**
+ +* '& +* +**s-   BA3	BB3B>BB	B*	c                b  a  ! V3R lR4      o \         P                  ! S! 4       4      p \        \        4      ;_uu_ 4        \	        R 4       RRR4       RSn        R#   + '       g   i     L; i  \
         d$    T! 4       e   \        P                  ! R4       h  LIi ; i  RSn        i ; i)z}
Test that in cases where the garbage cannot be collected, we raise an
error, instead of hanging forever trying to clear it.
c                   <   <a  ] tR tRt o RtRtR tV3R ltRtV t	R# )<TestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDeli[  z
An object that not only contains a reference cycle, but creates new
cycles whenever it's garbage-collected and its __del__ runs
Tc                    W n         R # r   cyclerG   s   &r"   rI  ETestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDel.__init__b  s    !
r%   c                L   < R V n         SP                  '       d
   S! 4        R # R # r   )r  r  )r   ReferenceCycleInDels   &r"   __del__DTestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDel.__del__e  s#    !
&111 () 2r%   r  N)
rK   rL   rM   rN   __doc__r  rI  r  rO   rP   )rR   r  s   @r"   r  r  [  s       J"* *r%   r  c                      R # r   rJ   rJ   r%   r"   rV  1TestAssertNoGcCycles.test_fails.<locals>.<lambda>s  s    r%   Nz*GC does not call __del__ on cyclic objectsF)	weakrefrefr   rx  r   r'   rn   skipr  )r   rw  r  s   & @r"   
test_failsTestAssertNoGcCycles.test_failsT  s    	* 	*&	3/12A	"<00'5 1 .3* 10 "  3?KK LM # .3*sL   B% A4 A!A4 !A1	,A4 0B% 1A4 4+B"B% !B""B% %	B.rJ   N)rK   rL   rM   rN   r  r  r  rn   markslowr  rO   rP   rQ   s   @r"   r  r  7  s0     $	&, [[(3 (3r%   r  )@r  r  rr   rb  rZ  r  rn   numpyr,   numpy._core._multiarray_umath_core_multiarray_umathr-  numpy.testingr   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rT   r   r  r=  r  r  r  rT  r  r  r  r*  r@  rL  rQ  rV  rn  rp  rx  r~  r  r  r  r  r  r  skipifr  rJ   r%   r"   <module>r     su    	 	 
     + +     2+/ +/\\1\ \1~* *Z\) \)~u < u pP l P f(M (MVFD FDREH EHPB BDc, c,L5G 5GpA A(*.*8	%@+%\%8 %&P,&^%"' -& -
1 $-EFE3 E3 GE3r%   