o 6a8@sddlZddlZddlmZddlmZddlZddlZddl m Z m Z m Z m Z mZmZddlZGdddZGdddZGd d d ZGd d d Zd dZGdddZdS)N)given)numpy)assert_ assert_equal assert_raises assert_warns HAS_REFCOUNTassert_raises_regexc@sZeZdZddZddZejjddddZd d Z d d Z d dZ ddZ ddZ dS) TestArrayReprcCs$ttjtjg}tt|ddS)Narray([nan, inf]))nparraynaninfrreprselfxrB/usr/lib/python3/dist-packages/numpy/core/tests/test_arrayprint.py test_nan_infszTestArrayRepr.test_nan_infcCsGdddtj}tddg|}tt|dtddgddgg|}tt|dtjd d gd |}tt|d dS) Nc@s eZdZdS)z(TestArrayRepr.test_subclass..subN)__name__ __module__ __qualname__rrrrsub rz sub([1, 2])zsub([[1, 2], [3, 4]])rr)a.subcSt||}|SNr asarrayr&clsinpobjrrr__new__+z7TestArrayRepr.test_object_subclass..sub.__new__ct|}|Sr0super __getitem__rindret __class__rrrr</ z;TestArrayRepr.test_object_subclass..sub.__getitem__rrrr7r< __classcell__rrrArr*rzsub([None, None], dtype=object)z [None None]z:sub([None, sub([None, None], dtype=object)], dtype=object)z&[None sub([None, None], dtype=object)])r r%rrstrrrrErtest_object_subclass(s z"TestArrayRepr.test_object_subclasscs<Gfdddtjd}tt|dtt|dddg}tt|dtt|dd}tt|dtt|d d}||d <||d <tt|d tt|d d |d <d}d|d <tt|dtt|d Gfdddtjtd}tt|dtt|d ddS)Ncr.)z2TestArrayRepr.test_0d_object_subclass..subcSr/r0r1r3rrrr7Ar8z:TestArrayRepr.test_0d_object_subclass..sub.__new__cr9r0r:r=r@rrr<ErBz>TestArrayRepr.test_0d_object_subclass..sub.__getitem__rCrrErFrr@rGrrzsub(1)1z sub([1, 1])z[1 1]zsub(None, dtype=object)Nonerz.DuckCountercs(t|}t|s|d}|S)N.)r;r< isinstancer&)ritemresult) DuckCounterrArrr<gs  zFTestArrayRepr.test_0d_object_subclass..DuckCounter.__getitem__cSsdddd|dS)Nzeroonetwo)rrrmany)getrMrrrr to_stringmzDTestArrayRepr.test_0d_object_subclass..DuckCounter.to_stringcSs,|jdkr |Sdddi}tj||dS)NrallcSs|Sr0)rVrrrrtzTTestArrayRepr.test_0d_object_subclass..DuckCounter.__str__.. formatter)shaperVr array2string)rfmtrrr__str__ps  zBTestArrayRepr.test_0d_object_subclass..DuckCounter.__str__)rrrr<rVrarDr)rOrFrrOfsrOz[zero one two many many]rP)r r%rrrHaranger&)rrydcr)rOrrtest_0d_object_subclass=s4   z%TestArrayRepr.test_0d_object_subclasscCstd}||d<tt|dd|d<tddg}||d<tt|dd|d<td}td}||d<||d<tt|dd|d<dS)Nrz-array(array(..., dtype=object), dtype=object)rrz5array([None, array(..., dtype=object)], dtype=object)zBarray(array(array(..., dtype=object), dtype=object), dtype=object)r r rr)rarr0darr1dfirstsecondrrrtest_self_containing{s(    z"TestArrayRepr.test_self_containingcCs6tddg}ddg|d<dg|d<tt|ddS)Nrrrrz.array([list([1, 2]), list([3])], dtype=object)rg)rrirrrtest_containing_lists   z"TestArrayRepr.test_containing_listcCsttddS)Nstest)rr voidrUrrrtest_void_scalar_recursionsz(TestArrayRepr.test_void_scalar_recursioncCs*tg}tjd|d}tt|ddS)Nrr#z!array([(), (), (), ()], dtype=[]))r r$emptyrr)r no_fields arr_no_fieldsrrrtest_fieldless_structureds z'TestArrayRepr.test_fieldless_structuredN)rrrrr+pytestmarkxfailrIrfrlrmrorsrrrrr s  > r c@eZdZddZdS)TestComplexArraycsvdddtjtj tjgfddD}tjtjtjgfdd|D}gd}t||D] \}}t||q/dS)Nrrcs g|] }D]}t||qqSr)complex).0rpip)rvalsrr s z-TestComplexArray.test_str..cs(g|]}D] }tt|g|qqSr)rHr r )r{cdt)dtypesrrrs()l[0.+0.j]rr[0.+1.j]rr[0.-1.j]rr [0.+infj]rr [0.-infj]rr [0.+nanj]rr[1.+0.j]rr[1.+1.j]rr[1.-1.j]rr [1.+infj]rr [1.-infj]rr [1.+nanj]rr [-1.+0.j]rr [-1.+1.j]rr [-1.-1.j]rr [-1.+infj]rr [-1.-infj]rr [-1.+nanj]rr [inf+0.j]rr [inf+1.j]rr [inf-1.j]rr [inf+infj]rr [inf-infj]rr [inf+nanj]rr [-inf+0.j]rr [-inf+1.j]rr [-inf-1.j]rr [-inf+infj]rr [-inf-infj]rr [-inf+nanj]rr [nan+0.j]rr [nan+1.j]rr [nan-1.j]rr [nan+infj]rr [nan-infj]rr [nan+nanj]rr)r rr complex64cdouble clongdoublezipr)rcvalsactualwantedresvalr)rr~rtest_strs& zTestComplexArray.test_strN)rrrrrrrrrx rxc@seZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ ddZeeedddZejje ddddZd S)!TestArray2StringcCsNtd}tt|dkttj|ddddkttj|dddkd S) zBasic test of array2string.rz[0 1 2]r1.13max_line_widthlegacyz[0 1 2]rz [0 1 2]N)r rcrr_rr!rrr test_basics zTestArray2String.test_basiccCsHttdtjtgdddWddS1swYdS)Nnonsense)rrr)r)r TypeErrorr r_r rUrrrtest_unexpected_kwargs "z&TestArray2String.test_unexpected_kwargcCsdd}td}d}d}ttj|d|iddkttj|d |iddkttj|dd d idd kttj|d dd id|ttj|d dd id|td}ttj|ddd iddkttj|ddd iddktddg}ttj|ddd iddkdS)z6Test custom format function for each element in array.cSs(t|dkr dSt|dkrdSdS)Nr.roO)r absrYrrr_format_functions z?TestArray2String.test_format_function.._format_functionrz [0x0 0x1 0x2]z [0o0 0o1 0o2]rXr\z[. o O]int_kindcSd|S)Nz%.4frrYrrrrZr[z7TestArray2String.test_format_function..z[0.0000 1.0000 2.0000]intcSt|Sr0)hexrYrrrrZr[cSrr0)octrYrrrrZr[@ float_kindcSrNz%.2frrYrrrrZr[z[0.00 1.00 2.00]floatcSrrrrYrrrrZr[abcdefnumpystrcSs|dSNrr)srrrrZr[z[abcabc defdef]N)r rcrr_rr )rrrx_hexx_octrrrrtest_format_functions<   z%TestArray2String.test_format_functionc Cstdtjdfdtjdfg}tjddg|d}tt|dtjd d z'tjd d gd }|dd t dtt|t dWtjdd ntjdd wtt|t dtj d ddgd}|dd t dtt|t dtjddgfddgfgdgd}tt|dtjddgddggfddgddggfgdgd}tt|d tjd!d"d}tt|d#dS)$Nnamegrades)r)Sarah)g @@)John)g@rr#z([('Sarah', [8., 7.]) ('John', [6., 7.])]rr )AzM8[s])r^r$rbNaTz [('1970-01-01T00:00:00',) ('1970-01-01T00:00:00',) ('1970-01-01T00:00:00',) ('1970-01-01T00:00:00',) ('1970-01-01T00:00:00',) ('NaT',) ('NaT',) ('NaT',) ('NaT',) ('NaT',)]Fa; [('1970-01-01T00:00:00',) ('1970-01-01T00:00:00',) ('1970-01-01T00:00:00',) ('1970-01-01T00:00:00',) ('1970-01-01T00:00:00',) ( 'NaT',) ( 'NaT',) ( 'NaT',) ( 'NaT',) ( 'NaT',)]i@)rzm8[s]z~ [(123456,) (123456,) (123456,) (123456,) (123456,) ( 'NaT',) ( 'NaT',) ( 'NaT',) ( 'NaT',) ( 'NaT',)]rry{)Bi4rz[([ 1, -1],) ([123, 1],)]rrr )rrr z1[([[ 0, 1], [ 2, 3]],) ([[12, 0], [ 0, 0]],)])?g7@rzf8,f8,f8z(1., 2.12345679, 3.))r r$str_float64r rr_set_printoptionszerosfill datetime64textwrapdedentfull)rrrr struct_int struct_2dint array_scalarrrrtest_structure_formatsL     & z&TestArray2String.test_structure_formatcCstjgdddd}tt|ddtt|ddtt|dttt|tt|ttt|dtt|ddS) N)Arrr31mRedu1r#V8rz)void(b'\x1B\x5B\x32\x4B\x07\x41\x0A\x08')z#b'\x1B\x5B\x32\x4B\x07\x41\x0A\x08'zearray([b'\x1B\x5B\x32\x4B\x07\x41\x0A\x08', b'\x1B\x5B\x33\x31\x6D\x52\x65\x64'], dtype='|V8'))r r r&rrrHevalvarsrrrrtest_unstructured_void_repr>s $z,TestArray2String.test_unstructured_void_reprcCs&tdt}ttj|dddddS)Nrrr edgeitems thresholdz [0 ... 0])r rrrr_)rarrrrrtest_edgeitems_kwargJs z%TestArray2String.test_edgeitems_kwargcCs2td}d}tt||d}tt||dS)Niz#[ 0 1 2 ... 998 999 1000]z0array([ 0, 1, 2, ..., 998, 999, 1000]))r rcrrHrrrstrAreprArrrtest_summarize_1dRs z"TestArray2String.test_summarize_1dcCs:tddd}d}tt||d}tt||dS)NirizJ[[ 0 1 2 ... 498 499 500] [ 501 502 503 ... 999 1000 1001]]zdarray([[ 0, 1, 2, ..., 498, 499, 500], [ 501, 502, 503, ..., 999, 1000, 1001]]))r rcreshaperrHrrrrrtest_summarize_2dZs z"TestArray2String.test_summarize_2dcCstdd}dd}t||ddddt||d dddt||d ddd t||ddt||d d t||d d |ddddf}t||ddddt||ddddt||ddddt||ddt||ddt||dddS)Nrc[stj|fd|d|S)N) separatorr)r r_)r!widthkwrrrmake_strgrWz1TestArray2String.test_linewidth..make_strrrrz[111111]rrbz [1111 11]z [11111 1]z [111 111]rz [[[111111]]] z[[[11111 1]]]z[[[111 111]]]z[[[11 11 11]]])r rr)rr!rbrrrtest_linewidthds zTestArray2String.test_linewidthcCs:tdg}ttj|dddttj|dddddS)Nxxxxxrbrz ['xxxxx']rrz [ 'xxxxx'])r r rr_rrrrtest_wide_elements  z"TestArray2String.test_wide_elementcCsGddd}td|g|dgg}tt|dttj|dddtt|dGdd d }td|g|dgg}tt|d tt|d d dS) Nc@rw)z7TestArray2String.test_multiline_repr..MultiLinecSdS)Nz Line 1 Line 2rrUrrr__repr__z@TestArray2String.test_multiline_repr..MultiLine.__repr__Nrrrrrrrr MultiLinerrz5[[None Line 1 Line 2] [Line 1 Line 2 None]]rbrz4[[None Line 1 Line 2] [Line 1 Line 2 None]]z`array([[None, Line 1 Line 2], [Line 1 Line 2, None]], dtype=object)c@rw)z;TestArray2String.test_multiline_repr..MultiLineLongcSr)Nz*Line 1 LooooooooooongestLine2 LongerLine 3rrUrrrrrzDTestArray2String.test_multiline_repr..MultiLineLong.__repr__Nrrrrr MultiLineLongrrzarray([[None, Line 1 LooooooooooongestLine2 LongerLine 3 ], [Line 1 LooooooooooongestLine2 LongerLine 3 , None]], dtype=object)zarray([[None, Line 1 LooooooooooongestLine2 LongerLine 3 ], [Line 1 LooooooooooongestLine2 LongerLine 3 , None]], dtype=object))r r rr_r array_repr)rrr!rrrrtest_multiline_reprs0   z$TestArray2String.test_multiline_reprcCsRtjdtd}td|d<td|d<d|d<td|d <tt|d dS) Nr r#r)rrr)rr)rr)rr)rraarray([[array([[1., 0.], [0., 1.]]), array([[1., 0., 0.], [0., 1., 0.], [0., 0., 1.]])], [None, array([[1.], [1.], [1.]])]], dtype=object))r rpobjecteyer'rrrrrrtest_nested_array_reprsz'TestArray2String.test_nested_array_reprUcCsTt|||g}t|d|d|}tj|tt|ddd}t||dS)Nrz[{0!r} {0!r} {0!r}]rrr)r r rformatr_lenr)rtextr! expected_reprrNrrr test_any_texts  zTestArray2String.test_any_textzPython lacks refcountsr,cCsZttd}t|}t|t|t|}ttt ||kdSr) gcdisabler rcsys getrefcountr_collectenabler)rr!r1r2rrr test_refcounts     zTestArray2String.test_refcountN)rrrrrrrrrr r rrr r#rhynp from_dtyper r$r)rtruskipifrr2rrrrrs" #8   :  rc@seZdZdZddZddZddZdd Zd d Zd d Z ddZ ddZ ddZ ddZ ddZddZddZddZddZd d!Zd"d#Zd$d%Zd&d'Zd(d)Zd*S)+TestPrintOptionsz.Test getting and setting global print options.cCst|_dSr0)r get_printoptionsoldoptsrUrrrsetupszTestPrintOptions.setupcCstjdi|jdS)Nr)r rr8rUrrrteardownszTestPrintOptions.teardowncCs:tgd}tt|dtjddtt|ddS)N)?rgރB?z+array([1.5 , 0. , 1.23456789])r precisionzarray([1.5 , 0. , 1.2346]))r r rrrrrrrrs zTestPrintOptions.test_basiccCstjdddgdfdgdfdgdfdgd fd gd fd gd fdgdfdgdfgddfdgdfdgdftddgdff D]\}}t|}tt|d|q.r\array([-1, 0, 1])r rcrrrrrrrtest_formatter s zTestPrintOptions.test_formattercCstd}tjdddidtt|dtjddidtt|dtjdd didtt|dtjddidtt|dtjdd didtt|dtjd didtt|dtd }tjd ddidtt|dtjddidtt|ddS)NrrXcSrDrErFrYrrrrZrz7TestPrintOptions.test_formatter_reset..r\rGrzarray([0, 1, 2])cSrDrErFrYrrrrZrcSrDrErFrYrrrrZrrrrcSrDrErFrYrrrrZ#rzarray([-1.0, 0.0, 1.0])rzarray([0., 1., 2.])rHrrrrtest_formatter_resets$  z%TestPrintOptions.test_formatter_resetcCstttdddtttdddtttdtjdtjddgd}tt|dd tttd d d tttd dd dtd}tj dddidtt|dtt|dt t tj tdtdtj tdtddtj tddddS)Nucafé.r\z array(test)rJr)styler)rOrr) rrHr r rrrr timedelta64rrDeprecationWarningr_)rr!rrrrtest_0d_arrays(s,  zTestPrintOptions.test_0d_arrayscCsJtgd}tgd}tgd}tgd}tt|dtt|dttt|ddttt|d d tt|d tt|d ttttjtjgd ttttjtj gdttjddg}ttjddg}ttjddg}tjddtt|dtt|dtt|ddS)N)r@r)rrSg$)r?rS)gYrSrzarray([1., 2., 3.])zarray([ 1., 2., -10.])r array(1.)ryz array(-10.)zarray([100., 2., -1.])zarray([-100., 2., 1.])r zarray([ nan, -inf])ig8EGr?g8EGrg*4rr<z%array([ inf, 1.00e+05, 1.12e+00])z(array([ inf, 1.00e+05, -1.12e+00])z+array([ inf, 1.12e+000, -1.00e+120]))r r rrrrr)rrrdzwrrrtest_float_spacingGs& z#TestPrintOptions.test_float_spacingcCsrtttddgdtttddgdtttdgdtttddtttdddS)NTzarray([ True, True])Fzarray([ True, False])zarray([ True])z array(True)z array(False))rrr r rUrrrtest_bool_spacing_sz"TestPrintOptions.test_bool_spacingcCstd}tdg}tjddgdd}tt|dtttdd tt|d tttd gd tt|d tttd dgdtjddtt|dtttddtt|dtt|dtttd dgdtjddtt|dtttddtt|dtt|dtjddtt|dtt|dtt| dtttddtttd gd tt|d!tttd"d#gd$tttjd%d&dS)'Ng@g VcA??6sӭ?6sӭ?c16r#zarray([0., 1., 2., 3.])rrUzarray([1.234e+09])r>z array([0.])7array([1. +1.j , 1.12345679+1.12345679j])gzarray([ 0., -0.]) )signzarray([ 0., 1., 2., 3.])z array( 1.)zarray([ 1.234e+09])z9array([ 1. +1.j , 1.12345679+1.12345679j])+zarray([+0., +1., +2., +3.])z array(+1.)zarray([+1.234e+09])z9array([+1. +1.j , +1.12345679+1.12345679j])rrzarray([ 1.23400000e+09])zarray([ -1.23400000e+09])z array(1.0)z array([ 0.])z9array([ 1.00000000+1.j , 1.12345679+1.12345679j])rTrz [ -1. 10.]T)wrongarg) r rcr rrrrHrr)rr!rrrrrtest_sign_spacingksJ     z"TestPrintOptions.test_sign_spacingcCsttjddgdddS)Ng@g?f2r#)rr r rUrrrtest_float_overflow_nowarnsz+TestPrintOptions.test_float_overflow_nowarncCs2tjddd}tt|dtt|dddS)Nrz.)gGz(@r?gr%4xYunique) floatmodezarray([0.6104 , 0.922 , 0.457 , 0.0906 , 0.3733 , 0.007244, 0.5933 , 0.947 , 0.2383 , 0.4226 ], dtype=float16)zarray([0.2918820979355541 , 0.5064172631089138 , 0.2848750619642916 , 0.4342965294660567 , 0.7326538397312751 , 0.3459503329096204 , 0.0862072768214508 , 0.39112753029631175])z4array([0. , 0.1, 0.2, 0.3, 0.4, 0.5], dtype=float16)zarray([1.e+00, 1.e+01, 1.e+02, 1.e+03, 1.e+04, 1.e+05, 1.e+06, 1.e+07, 1.e+08, 1.e+09, 1.e+10, 1.e+11, 1.e+12, 1.e+13, 1.e+14, 1.e+15, 1.e+16, 1.e+17, 1.e+18, 1.e+19, 1.e+20, 1.e+21, 1.e+22, 1.e+23, 1.e+24])z+array([1.234e+001, 1.000e+002, 1.000e+123])z;array([1. +1.j , 1.123456789+1.123456789j])maxprecr)rjr=znarray([0.2918821 , 0.50641726, 0.28487506, 0.43429653, 0.73265384, 0.34595033, 0.08620728, 0.39112753])rbz/array([1.e+00, 1.e+05, 1.e+10, 1.e+15, 1.e+20])r]fixedrzmarray([0.6104, 0.9219, 0.4570, 0.0906, 0.3733, 0.0072, 0.5933, 0.9468, 0.2383, 0.4226], dtype=float16)zGarray([0.2919, 0.5064, 0.2849, 0.4343, 0.7327, 0.3460, 0.0862, 0.3911])zFarray([0.0000, 0.1000, 0.2000, 0.3000, 0.3999, 0.5000], dtype=float16)zCarray([1.0000e+00, 1.0000e+05, 1.0000e+10, 1.0000e+15, 1.0000e+20])z.array([1.2340e+001, 1.0000e+002, 1.0000e+123])rzarray([0.0000, 0.0000, 0.0000])z'array([1.0000+1.0000j, 1.1235+1.1235j])zearray([0.00000000, 0.09997559, 0.19995117, 0.30004883, 0.39990234, 0.50000000], dtype=float16) maxprec_equalzarray([0.610352, 0.921875, 0.457031, 0.090576, 0.373291, 0.007244, 0.593262, 0.946777, 0.238281, 0.422607], dtype=float16)znarray([0.29188210, 0.50641726, 0.28487506, 0.43429653, 0.73265384, 0.34595033, 0.08620728, 0.39112753])z4array([0.0, 0.1, 0.2, 0.3, 0.4, 0.5], dtype=float16)z7array([1.00000000+1.00000000j, 1.12345679+1.12345679j])z-1p-97) r r float16rrcrangerrrrfromhexr_)rrrdrVrrWwpr!rrrtest_floatmodes    zTestPrintOptions.test_floatmodecCs|tjddtttddttttdtjdtjddtttddttttdtjd dS) Nrrg|ӭ?z 1.12345678912rz (1+nan*j)Fz1.1234567891234568z(1+nanj))r rrrHr complex128rzrrUrrrtest_legacy_mode_scalarss   z)TestPrintOptions.test_legacy_mode_scalarscCsDtjddtttddtjddtttdddS)Nrri'z$[ 0 1 2 ..., 9997 9998 9999]Fz#[ 0 1 2 ... 9997 9998 9999])r rrrHrcrUrrrtest_legacy_stray_comma s  z(TestPrintOptions.test_legacy_stray_commacCstjddtttjdddddtttjddddtd d }tttjd |dd |tttjd |dtd|dS)Nr linewidthrg4@f4r#zHarray([10., 11., 12., 13., 14., 15., 16., 17., 18., 19.], dtype=float32)g7@zu array([10., 11., 12., 13., 14., 15., 16., 17., 18., 19., 20., 21., 22.], dtype=float32)rKrz"array(['1', '1', '1'], dtype='{}')rzm array(['1', '1', '1', '1', '1', '1', '1', '1', '1', '1', '1', '1'], dtype='{}')) r rrrrcrrr'r%)rstyprrrtest_dtype_linewidth_wrappings   z.TestPrintOptions.test_dtype_linewidth_wrappingcCstjddd}tjddtt|tdtjdddtt|td tjd dd}tjd d dtt|td tjd ddtt|tddS)Nrr fill_valuervzN array([2, 2, 2, 2, 2, 2, 2])rrwrz; array([2, 2, 2, 2, 2, 2, 2])rFzQ array([2, 2, 2, 2, 2, 2, 2, 2])z> array([2, 2, 2, 2, 2, 2, 2, 2]))r rrrrrrrrrrtest_linewidth_repr s, z$TestPrintOptions.test_linewidth_reprcCsTtjddd}tjddtt|tdtjdddtt|tddS) Nrrr{rvzK [2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2]rr~z> [2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2])r rrrrHrrrrrrtest_linewidth_strEs z#TestPrintOptions.test_linewidth_strcCstjdddtdd}tt|tdtd}tt|tdtjdd tt|td tt|td dS) Nrrr)rrrz array([[[ 0, ..., 2], ..., [ 6, ..., 8]], ..., [[18, ..., 20], ..., [24, ..., 26]]]))rrrrz array([[[[0.]], ..., [[0.]]], ..., [[[0.]], ..., [[0.]]]])rrz array([[[ 0, ..., 2], ..., [ 6, ..., 8]], ..., [[18, ..., 20], ..., [24, ..., 26]]])z array([[[[ 0.]], ..., [[ 0.]]], ..., [[[ 0.]], ..., [[ 0.]]]])) r rrcr rrrrr)rr!rrrrtest_edgeitemsWs(   zTestPrintOptions.test_edgeitemscCsXtttjtddtttjddtttjddtttjddtttjdddS)Nr)rrJ1r<r;)r ValueErrorr rrrrUrrr test_bad_argss zTestPrintOptions.test_bad_argsN)rrr__doc__r9r:rrCrIrJrRrXrYrbrdrerrrtrurzrrrrrrrrr6s,  )_ % Fr6cCs&d}tjdgtd}tt||dS)Nuarray(['é'], dtype=object)ér#)r r r!rr)expectedrrrrtest_unicode_object_arraysrc@s,eZdZddZddZddZddZd S) TestContextManagercCsNtjddttdgd}Wdn1swYt|ddS)Nrr<rSrz[0.67])r printoptionsrHr r)rrrrr test_ctx_mgrszTestContextManager.test_ctx_mgrcCsXt}tj|dd|dddWdn1swYtt|dS)Nr=rrwrr=rw)r r7rrroptsrrrtest_ctx_mgr_restoress z(TestContextManager.test_ctx_mgr_restorescCsVt}ztjdddt1swYWn ty!Ynwtt|dS)Nr r)r r7rrrrrrrtest_ctx_mgr_exceptionss z*TestContextManager.test_ctx_mgr_exceptionscs\ddi}tjdi| }|Wdn1swYtfdd|D|dS)Nr=rcsi|]}||qSrr)r{k saved_optsrr rgz;TestContextManager.test_ctx_mgr_as_smth..r)r rcopyr)rrctxrrrtest_ctx_mgr_as_smths  z'TestContextManager.test_ctx_mgr_as_smthN)rrrrrrrrrrrrs  r)r,r* hypothesisrhypothesis.extrarr3rtr numpy.testingrrrrrr rr rxrr6rrrrrrs(   /#5