1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
U
P±d(ƒã@sÜddlmZddlZddlZddlmmZddlmm    Z    ddl
m Z m Z m Z ddlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYddlZm[Z[ej\Z\dfdd„Z]Gd    d
„d
ƒZ^Gd d „d ƒZ_Gd d„dƒZ`dd„ZadS)é)ÚreduceN)Úassert_Ú assert_raisesÚ assert_equal)KÚMaskTypeÚ MaskedArrayÚabsoluteÚaddÚallÚallcloseÚallequalÚalltrueÚarangeÚarccosÚarcsinÚarctanÚarctan2ÚarrayÚaverageÚchooseÚ concatenateÚ    conjugateÚcosÚcoshÚcountÚdivideÚequalÚexpÚfilledÚgetmaskÚgreaterÚ greater_equalÚinnerÚ isMaskedArrayÚlessÚ
less_equalÚlogÚlog10Ú    make_maskÚmaskedÚ masked_arrayÚ masked_equalÚmasked_greaterÚmasked_greater_equalÚ masked_insideÚ masked_lessÚmasked_less_equalÚmasked_not_equalÚmasked_outsideÚmasked_print_optionÚ masked_valuesÚ masked_whereÚmaximumÚminimumÚmultiplyÚnomaskÚnonzeroÚ    not_equalÚonesÚouterÚproductÚputÚravelÚrepeatÚresizeÚshapeÚsinÚsinhÚsometrueÚsortÚsqrtÚsubtractÚsumÚtakeÚtanÚtanhÚ    transposeÚwhereÚzeros)ÚpickleÚcCs,t||ƒ}|s(td|›d|›d|›ƒ|S)NzNot eq:Ú
z
----)r Úprint)ÚvÚwÚmsgÚresult©rYúQd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\numpy/ma/tests/test_old_ma.pyÚeqs
r[c@seZdZdd„Zdd„Zej dddg¡dd    „ƒZd
d „Z    d d „Z
dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd„Zdd„Zd d!„Zd"d#„Zd$d%„Zd&d'„Zd(d)„Zd*d+„Zd,d-„Zd.d/„Zd0d1„Zd2d3„Zd4d5„Zd6d7„Zd8d9„Z d:d;„Z!d<d=„Z"d>d?„Z#d@S)AÚTestMac Cst ddddtddddddddg ¡}t dd    ddd
d d    dddd    dg ¡}d}d d d d d d d d d d d d g }d d d d d d d d d d d d g }t||d}t||d}t dd    ddg¡}t|d d d d gd}    t |d|¡}
|j} | d¡|||||||||    |
| f |_dS)Nçð?gÀç@ç@ç@g$Àç$@ç@çgð¿çÀér©Úmaskgà¿çà?gš™™™™™é?ç@Œµx¯D)ÚnprÚpirOrCZset_fill_valueÚd© ÚselfÚxÚyÚa10Úm1Úm2ÚxmÚymÚzÚzmÚxfÚsrYrYrZÚ setup_method&s&"  
zTestMa.setup_methodc CsÈ|j\ }}}}}}}}}    }
} tt|ƒ ƒtt|ƒƒtt|ƒ| ƒt|j| ƒt|j|jƒt|jtdd„| ƒƒtt|ƒt    |ƒtdd„|ƒƒtt
||
ƒƒtt
t |dƒ|
ƒƒtt
||ƒƒdS)NcSs||S©NrY©rorprYrYrZÚ<lambda>=óz)TestMa.test_testBasic1d.<locals>.<lambda>cSs||Sr{rYr|rYrYrZr}>r~ri) rlrr#rrCÚdtypeÚsizerrÚlenr[rrmrYrYrZÚtest_testBasic1d5s   zTestMa.test_testBasic1dry©éé)ééc CsØ|j\ }}}}}}}}    }
} }||_||_||_||_|| _tt|ƒ ƒtt|ƒƒtt|ƒ|ƒt|j|ƒt|jtdd„|ƒƒtt|ƒt|ƒtdd„|ƒƒtt    || ƒƒtt    t
|dƒ| ƒƒtt    ||ƒƒdS)NcSs||Sr{rYr|rYrYrZr}Qr~z)TestMa.test_testBasic2d.<locals>.<lambda>cSs||Sr{rYr|rYrYrZr}Rr~ri) rlrCrr#rr€rrrr[r) rnryrorprqrrrsrtrurvrwrxrYrYrZÚtest_testBasic2dCs   zTestMa.test_testBasic2dc Csì|j\ }}}}}}}}}    }
} tddgddggƒ} t| ddgddggƒ} tt| | | | ƒƒtt| | | | ƒƒtt| | | | ƒƒdD]X} | | ¡}| | ¡}| | ¡}| | ¡}|
 | ¡}
tt| | ƒƒtt||||ƒƒtt||||ƒƒtt||||ƒƒtjdddtt||||ƒƒW5QRXtt||||ƒƒtt||||ƒƒtt||||ƒƒtjdddtt||||ƒƒW5QRXtt||||ƒƒtt||||ƒƒtt||||ƒƒtt||||ƒƒtt|d|dƒƒttt|ƒdt|ƒdƒƒtt||||ƒƒttt     ||¡t    ||ƒƒƒttt 
||¡t
||ƒƒƒttt  ||¡t ||ƒƒƒtjddd"ttt  ||¡t ||ƒƒƒW5QRXqŒdS)    Nrer‡rr„))é rƒ)r‡r†Úignore©rÚinvalidç@) rlrr*rr[ÚreshaperjÚerrstateÚabsr    rIr8r)rnrorprqrrrsrtrurvrwrxryÚa2dÚa2dmrYrYrZÚtest_testArithmeticWsF
 
 
 
 
 
  zTestMa.test_testArithmeticcCs>t dg¡}tdgƒ}tt||tƒƒtt||tƒƒdS)Nre)rjrrÚ
isinstancer)rnÚnaÚmarYrYrZÚtest_testMixedArithmetic}s 
zTestMa.test_testMixedArithmeticc Csö|j\ }}}}}}}}}    }
} ttt |¡t|ƒƒƒttt |¡t|ƒƒƒttt |¡t|ƒƒƒttt |¡t|ƒƒƒttt |¡t|ƒƒƒttt     |¡t    |ƒƒƒtj
dddZttt  t |ƒ¡t |ƒƒƒttt  t |ƒ¡t |ƒƒƒttt t |ƒ¡t|ƒƒƒW5QRXttt |¡t|ƒƒƒttt |¡t|    ƒƒƒttt |¡t|    ƒƒƒttt |¡t|    ƒƒƒttt ||¡t||ƒƒƒttt |¡t|ƒƒƒttt ||¡t||ƒƒƒttt ||¡t||ƒƒƒttt ||¡t||ƒƒƒttt ||¡t||ƒƒƒttt ||¡t||ƒƒƒttt ||¡t||ƒƒƒttt |¡t|ƒƒƒttt ||f¡t||fƒƒƒttt ||f¡t||fƒƒƒttt ||f¡t||fƒƒƒttt |||f¡t|||fƒƒƒdS)NrŠr‹)rlrr[rjrrrDrErLrMrrHrr&r'rrrrrrrr;r$r r%r!rrrmrYrYrZÚtest_testUfuncs1ƒs8&   zTestMa.test_testUfuncs1cCsötddddgddddgd}tt|ƒjjtjkƒtdt|ƒƒtdtdƒƒttdtddgdƒƒ|     d    ¡}tt|ƒjjtjkƒtt
t|dƒtj ƒƒtt|ƒjjtjkƒttdt|ƒƒƒtt t|dƒƒt kƒttdd
gt|dƒƒƒdS) Nrcr]r^rbrerrfr…)r‡r‡r‡)rrrrÚtyperjZintprr[rŽr”Úndarrayrr9)rnÚottrYrYrZÚtest_xtestCount¢s
zTestMa.test_xtestCountc Csb|j\ }}}}}}}}}    }
} t |¡} t|ƒ} ttt| ƒt | ¡ƒƒttt| ƒt     | ¡ƒƒdSr{)
rlrjr@rr[Úmaxr6rÚminr7)rnrorprqrrrsrtrurvrwrxryZxrZxmrrYrYrZÚtest_testMinMax±s
 
zTestMa.test_testMinMaxc CsÚ|j\ }}}}}}}}}    }
} tttj |¡t |¡ƒƒtttj |¡t |¡ƒƒttdttdƒddƒƒttdttdƒddƒƒtttj|ddt|ddƒƒtttjt    |dƒddt|ddƒƒttt |d¡t|dƒƒƒtttj
|ddt
|ddƒƒttt 
|d¡t
|dƒƒƒtttj
t    |dƒddt
|ddƒƒt | ƒdkrÖttt  ||fd¡t ||fdƒƒƒtttj |d¡t |d¡ƒƒttt |d¡t|dƒƒƒttt 
|d¡t
|dƒƒƒdS)Nr„r©Úaxisre) rlrr[rjr    rÚ
accumulaterJrrr>rrrmrYrYrZÚtest_testAddSumProd»s( & 
ÿ ÿ zTestMa.test_testAddSumProdcCs*t ddddg¡}t|ddddgd}t|ddddgd}t|ƒ}t|ƒt|ƒttt |¡t|ddƒƒtt|dƒt|dƒkƒt|d|dkƒt|dtkƒtt|d|dƒƒtt|dd…|dd…ƒƒtt|dd…|dd…ƒƒtt|dd…|dd…ƒƒd    |d<d    |d<tt||ƒƒd
|dd…<d
|dd…<tt||ƒƒt|d<tt||ƒƒt|dd…<tt||ƒƒ||dd…<t|d<tt    t
|ƒtddddgƒƒƒt ddddgddddgƒ|dd…<tt    t
|ƒtddddgƒƒƒt ddddgddddgƒ|dd…<tt    t
|ƒtddddgƒƒƒtt    |tddddgƒƒƒt  d¡d }t |d ƒ}tt||ƒƒtt    tdddddgtƒ|jƒƒttd |jƒƒtdd ddgtƒ}t dd ddgt¡}|d}|d}tt|ƒtƒtt|ƒtƒt||ƒt|dd…jdkƒdS)Nrer‡r„r…rrf)Ú
fill_valueéé    écr]rbZhello)r)rjrÚstrÚreprrr[rGr™r)r rr*rr4rrgr¤ÚobjectrrC)rnÚx1Zx2Zx3Úx4Ús1Ús2rYrYrZÚ test_testCIÐsZ    ""
 
zTestMa.test_testCIc Cs.dddddg}t|ƒ}t|ƒ}t||kƒt|dd}t||k    ƒt d¡}t||d}t|j|k    ƒtt||jƒƒt|j|kƒt|dd}t|jj|jjkƒt||dd}t|j|kƒt|dt    kƒd    |d<t|dt    k    ƒt|j|kƒtt|j
dƒƒt||dd}    t|    j|k    ƒt|    dt    kƒd    |    d<t|    dt    k    ƒt|    j|k    ƒtt|    j
dƒƒt|d
|d}
tt |
ƒj |d
j kƒtd ƒ} t    | d<t | d ƒ} ttt| | gƒ| ƒƒttt| ƒddddddddgƒƒt| d dd} tt| ddddddddgƒƒt| ddd}tt| |ƒƒdS)NrreT)Úcopyr¥rf©rgr°r‡r¦r]r„)é)r‡r‡r‡r‡r r…)r(rrjrrÚ_datar Ú_maskZ__array_interface__r)rgrrrBr[rrrA)rnÚnÚmrsÚm3r«Úy1Zy1aÚy2Zy2aZy3r¬Zy4Zy5Zy6rYrYrZÚtest_testCopySizesP   
  ÿ
"zTestMa.test_testCopySizecCstdƒ}dddddg}t|ƒ}| ¡}t||d}t|dtkƒt|dtkƒddg|ddg<t|j|kƒt|dtkƒt|dtk    ƒtt|ddd    d
dgƒƒt||d d }| ddd    gd
d dg¡t|j|k    ƒt|dtkƒt|dtkƒtt|d
d dddgƒƒdS)Nr¥rrerfr…r„é
é(r‡éÿÿÿÿTr±édéÈ)    rr(r°rrr)r´r[r?)rnrlrµr¶rsrorYrYrZÚ test_testPut5s$ zTestMa.test_testPutcCsntdƒ}t|dddddgd}tddgddgd}t|dtk    ƒt|dtk    ƒ||dd    …<t|dtkƒt|dtk    ƒtt|ddddd    gƒƒtdƒ}t|dddddgd}|dd    …}tddgddgd}t|dtk    ƒt|dtk    ƒ||dd…<t|dtkƒt|dtk    ƒtt|ddgƒƒt|dtkƒt|dtk    ƒtt|ddddd    gƒƒdS)
Nr¥rrfr»r¼rer‡r…r„)rrrr)r[)rnrlrorvrprYrYrZÚ test_testPut2Ks,   zTestMa.test_testPut2c Csp|j\ }}}}}}}}}    }
} ddddddddddddg } t | ¡d} t|| |    ƒttt|| dd|    kƒƒdS)Nrerr )rlrjr:r?rr
rK)rnrorprqrrrsrtrurvrwrxryr¶ÚirYrYrZÚtest_testMaPutes
 zTestMa.test_testMaPutc
 
CsÄtdƒ}| dd¡}d|jd<t|ddkƒ|d|}tt|j|ƒƒtt|jd|ƒƒtt|t|ƒjd||ƒƒd    |jd
<tdƒ}t|d <tt    |d ƒt    tƒkƒ|d k}tt
t |ttƒƒd kƒtt t |ttƒƒ|j kƒt ||tƒ}t|j |j kƒt|d tkƒt|dtkƒt|dtkƒt|d tk    ƒt|dtk    ƒtt||ƒƒt |t|ƒ}t|j |j kƒt|d tkƒt|dtk    ƒt|dtk    ƒt|d tkƒt|dtkƒt||ƒ}t|j |j kƒt|d tkƒt|dtk    ƒt|dtk    ƒt|d tkƒt|dtkƒtt||ƒƒtdddddgƒ}tdddd d gƒ}t|d<t ||| ƒ}tt|ddd    ddgƒƒt|d <t ||| ƒ}tt|ddd    ddgƒƒt|d tkƒt|dtk    ƒt|dtkƒtttt|dƒ|ƒt|dƒƒƒtttt|dƒ|ƒt|dƒƒƒtttt|dƒ|ƒt|dƒƒƒtttt|dƒ|ƒt|dƒƒƒtttt|dƒ|ƒt|dƒƒƒtttt|dƒ|ƒt|dƒƒƒtttt|dƒ|ƒt|dƒƒƒtttttdƒƒdd ƒd ddddgƒƒtttttdƒƒdd ƒdddd dgƒƒttttttdƒƒdd d d d gddd ƒj ddddd gƒƒttttttdƒƒd dd d d gddd ƒj ddd d dgƒƒttttttdƒƒdd d d d gddƒj dd dd d gƒƒttttdddddgdd d d d gddƒj dd dd dgƒƒtttddd d d gddd ddgƒddd ddgƒƒt!dt"j#d}t$|j t%ƒ}t||ƒ}tt||ƒƒt&|| |fƒ}tt|ddd    ddgƒƒt|d tkƒt|dtk    ƒt|dtkƒtdƒ}t|d<tdƒd}t|d<tdddd d d gdd d d d d gd}| 'd¡}t |||ƒ}t |||ƒ}    tt||    ƒƒtt(|    ƒt)kƒtt|    d dddd d!gƒƒt |tdƒ}tt|ddddddgƒƒt |dtƒ}tt|ddddddgƒƒdS)"Nér„r¥r‰)rery$@r»éerc.r…r²rér¦r]r^rbr_r`rer‡rdéûÿÿÿéÇrfr§)r»r»r»)rr†ér¼é2)*rrŽZflatrr[ÚrealÚimagrr)r¨rrOrCrr5rr r,r!r-r$r/r%r0r;r1rr+r.ÚlistÚranger2rgr<rjÚfloat32rPrrrrr9)
rnrorvÚcZatestZbtestZctestrpÚcmrwrYrYrZÚtest_testOddFeatureslsê 
  
 
 ÿ     (( ÿÿ þ ÿÿ þ ÿÿ þ ÿÿ þ  ÿ 
 $
    zTestMa.test_testOddFeaturescCsÜtttdddgdddgƒdddgƒƒtttdddgdddgƒdddgƒƒtdƒ}tdƒd}t|d<t|d<ttt||ƒtt||ƒ||ƒƒƒttt||ƒtt||ƒ||ƒƒƒtt     |¡dkƒtt     |¡dkƒdS)Nrer‡r…r„rr¦r¥)
rr[r7r6rr)rOr$r r)rnrorprYrYrZÚtest_testMinMax2Ñs&& ""zTestMa.test_testMinMax2cCs&tdƒ}t d¡}t|dd…<| ddd¡}| ddd¡}ttt |d¡t|dƒƒƒttt |dd¡t|ddƒƒƒttt t    |d    ƒt    |d    ƒ¡t||ƒƒƒttt 
t    |d    ƒt    |d    ƒ¡t
||ƒƒƒt d
dd ddgt ƒ}t|d<t|d    ddgƒ}t|d    d
kƒt|ddkƒt|ddkƒdS) Nér¥r†r‡r…r„)r‡rrererÚabcÚdef) rrjr)rŽrr[rNrKr"rr=rrª)rnrorpÚtrYrYrZÚ test_testTakeTransposeInnerOuterÞs&
  ÿÿz'TestMa.test_testTakeTransposeInnerOutercCsÒtdƒ}tdƒ}tdƒ}t|d<|d7}tt||dƒƒ|d7}tt||dƒƒtdƒ}tdƒ}t|d<|d8}tt||dƒƒ|d8}tt||dƒƒtdƒd}tdƒd}t|d<|d9}tt||dƒƒ|d9}tt||dƒƒtdƒd}tdƒ}t|d<|d}tt||ƒƒ|d}tt||ƒƒtdƒd}tdƒd}t|d<|d}tt||dƒƒ|tdƒ}tt|tdƒƒƒtdƒ tj¡}tdƒ}t|d<|d7}tt||dƒƒdS)Nr»r‡rer]r^)r»)rr)rr[r<ZastyperjrÏ)rnrprortrYrYrZÚtest_testInplaceòsR      zTestMa.test_testInplacecCsbtdƒ}t|ddd…<| dd¡}tdtjdƒD]*}tj||d}t |¡}tt    ||ƒƒq2dS)Nr‰r„r»r‡r…re)Úprotocol)
rr)rŽrÎrQÚHIGHEST_PROTOCOLÚdumpsÚloadsrr[)rnroÚprotoryrprYrYrZÚtest_testPickle$s 
zTestMa.test_testPicklecCsHtdƒ}t|d<tttƒdkƒt|dtkƒtt|ddƒdƒdS)Nr†rez--r)rr)rr¨rr)rnZxxrYrYrZÚtest_testMasked.s
zTestMa.test_testMaskedc    CsPtddddgddddgd}ttdt|ddƒƒttdt|ddddgd    ƒƒt|ddddgd
d \}}ttd|ƒƒt|d kƒt|dd…<tt|ddtkƒtddddgddddgd}| d d ¡}t|dd…df<ttt|ddddgƒƒtt|dddtkƒttddgt|ddƒƒt|dd
d\}}tt|ddgƒƒdS)Nrcr]r^rbrerrfr ©ÚweightsT©râÚreturnedr_r‡©r¡rä)rrr[rr)rŽ)rnr›rXZwtsrYrYrZÚtest_testAverage16s    zTestMa.test_testAverage1c    Cs0ddddddg}ddddddgddddddgg}tdƒ}ttt|dddƒƒttt|d|ddƒƒttdƒdtdƒgƒ}ttt|dƒtj t d¡¡dd    ƒƒttt|ddt d¡ddƒƒttt|ddt|ddt|dddgƒƒttt|d|d
d ƒƒttt|d|dd d ddddgƒƒttt|ddt|ddt|dddgƒƒtdƒ}ddddddg}ddddddgddddddgg}t    dƒ}ddddddg}    tttt
||ƒdddƒƒtttt
||ƒdddƒƒttt
||ƒddt kƒt tt
||    ƒddd ƒt t tt
||ƒddƒdƒt
||ƒ}
ttt|
dƒd ƒƒttt|
ddd d ddddgƒƒttt|
ddddgƒƒttt|
d|dd d ddddgƒƒtdƒ} tdƒd} t| | g| | ggddd\} }t t| ƒt|ƒƒt | j|jƒtt    dƒdddgdd\}}t t|ƒt|ƒƒtt    dƒdd\}}t t|ƒt|ƒƒtt    dƒt    dƒdd\}}tt|ƒt|ƒkƒtddgddggtƒ}t
|ddgddggƒ}t|dd}tt|ddgƒƒt|dd}tt|d dgƒƒt|dd}tt|dƒƒt|dd}tt|ddgƒƒdS)Nrrer†r r)r¡râr^rbg(@rág«ªªªªª
@rcr]r_ragÀX@g@r`r…Trå)r‡r‡r…)r¡rârä)rärãr‡r„rhg«ªªªªª@gø?)rrr rrrjr    rrPr<r*r)rrrCÚfloatr[)rnZw1Zw2rorprrrsr·Zm4Zm5rvÚaÚbZr1Zr2r‘r’Za2daZa2dmarYrYrZÚtest_testAverage2Isx  ÿ$ÿÿÿ 
ÿÿ     zTestMa.test_testAverage2cCsštdttdƒƒƒtdttdƒƒƒtdttdgggƒƒƒtdttdggƒƒƒttttddgƒƒttttddgƒƒttttddgddgdƒdS)Nrer]rrf)rÚintrrçrÚ    TypeErrorÚ
ValueErrorÚbool©rnrYrYrZÚtest_testToPythonƒszTestMa.test_testToPythonc    CsÆtddd}tjddtdtdƒjƒW5QRXtd|jƒt| jƒt| jƒtt||ƒjƒtt||ƒjƒt| ¡j|j    jkƒtddd}t| ¡|j    kƒt
t |ƒt t ƒƒdS)NrrerfrŠ©r) rrjrrrgr6r7rrr³rr¨r3)rnrtrorYrYrZÚtest_testScalarArithmeticŒs    z TestMa.test_testScalarArithmeticc
Csvtdddgƒ}tt| ¡|j ¡ƒƒtt| ¡|j ¡ƒƒtt| ¡|j ¡ƒƒtt| ¡|j ¡ƒƒtt| ddddd¡|j ddddd¡ƒƒtt|     dddg¡|j     dddg¡ƒƒtt| 
¡|j 
¡ƒƒtt|  ¡|j  ¡ƒƒtddgddggƒ}tt|  ¡|j  ¡ƒƒtt|  ¡|j  ¡ƒƒtt| ddg¡|j ddg¡ƒƒtt| ¡|j ¡ƒƒdS)Nrer…r‡rr„)rrr[Úanyr³r
ZargmaxZargminrÚcompressZconjrÚdiagonalrJrKrN)rnrèr¶rYrYrZÚtest_testArrayMethods›s ÿ($zTestMa.test_testArrayMethodscCstdddgƒ}t|jdƒdS)Nrer…r‡)rrÚndim©rnrèrYrYrZÚtest_testArrayAttributes¬szTestMa.test_testArrayAttributescCstdd„ttjƒDƒ ƒdS)NcSs&g|]}|ttƒkr| d¡s|‘qS)Ú_)ÚdirrÚ
startswith)Ú.0r¶rYrYrZÚ
<listcomp>±s 
þz'TestMa.test_testAPI.<locals>.<listcomp>)rrûrjršrïrYrYrZÚ test_testAPI°szTestMa.test_testAPIcCsZtdddgƒ}tdddgdddgd}t|djdƒt|djdƒt|djdƒdS)Nrer…r‡rrfrY)rrrC)rnrèrérYrYrZÚtest_testSingleElementSubscriptµs
z&TestMa.test_testSingleElementSubscriptcCs@tddddgddddgd}|dk}d||<t|dtkƒdS)Nrer‡r…r„rrfr¥)rrr))rnrèrÐrYrYrZÚtest_assignment_by_condition¼sz#TestMa.test_assignment_by_conditioncCsTtddgddgd}tddgddgd}|dk}||||<ddg}t|j|ƒdS)NrreFrfT)r*rrg)rnrèrérgZ expected_maskrYrYrZÚtest_assignment_by_condition_2Ãs  z%TestMa.test_assignment_by_condition_2N)$Ú__name__Ú
__module__Ú __qualname__rzr‚ÚpytestÚmarkZ parametrizerˆr“r—r˜rœrŸr£r¯rºrÀrÁrÃrÒrÓrØrÙrßràrærêrðròrörùrÿrrrrYrYrYrZr\$s>
&
23e 2
:    r\c@s4eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd S) Ú
TestUfuncscCsZtdddtdgdddgdgddtdddtdgdddgdgddf|_dS)Nr]rr½r‡rer†rf)rrkrlrïrYrYrZrzÎs((ÿzTestUfuncs.setup_methodc Csðdddddddddd    d
d d g }d D]È}ztt|ƒ}Wntk
rRtt|ƒ}YnXttj|ƒ}|jd|j…}t ¡>||krŽtj    dd|dkr¢tj    dd||Ž}||Ž}W5QRXt
t |  d¡|  d¡|ƒƒt
t |j|jƒƒq"dS)NrHÚarctanhrrÚarccoshr&r'rÚ true_divideÚ floor_divideÚ    remainderÚfmod)*rHr&r'rrrDrrLrrrrErrMZarcsinhr
r    rÚfabsÚnegativeÚfloorÚceilZ logical_notr    rIr8rr r r rÚhypotrrr;r%r!r$r Ú logical_andÚ
logical_orÚ logical_xorrŠ)rŒ)r    r&r'rñr)ÚgetattrÚumathÚAttributeErrorÚ fromnumericrjr–rlZninrZseterrrr[rÚeqmaskrg)rnZf_invalid_ignoreÚfZufZmfÚargsÚurÚmrrYrYrZÚtest_testUfuncRegressionÒs<ý 
  z#TestUfuncs.test_testUfuncRegressioncCs\|jd}tt|dd ƒtt|ddƒtt|dd…dddƒtt|dddƒdS)Nrr r…)rlrr rFrrJr>rørYrYrZÚ test_reduce÷s
 
zTestUfuncs.test_reducecCs¦tddƒ dd¡}t|dk|ƒ}t| ¡| ¡ƒt| ¡dƒt| d¡| d¡k ¡ƒt| d¡dddd    gk ¡ƒt| d¡djƒt| d¡djƒdS)
Nreé r…r„r¥rr†rÆr²)    rrŽr5rrržrr
rg)rnrèZamaskrYrYrZÚ test_minmaxþszTestUfuncs.test_minmaxcCs>dD]4}tddddgddddgd}ttt|ƒdgƒƒqdS)Nz?bhilqpBHILQPfdgFDGOrerr‡rf)rrr[r:)rnr×rorYrYrZÚ test_nonzeroszTestUfuncs.test_nonzeroN)rrrrzr r!r#r$rYrYrYrZrÍs
%
rc@sLeZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dd„Z
dS)ÚTestArrayMethodsc&Cs t ddddddddd    d
d d d ddddddddddddddddddd d!d"d#d$g$¡}| d%d%¡}| d&d'd'd&¡}t d(d)d(d)d(d(d)d(d)d)d(d)d(d(d(d)d(d)d(d(d(d)d)d)d)d(d(d)d(d(d(d(d)d(d)d(g$¡}t||d*}t|| |j¡d*}t|| |j¡d*}|||||||f|_dS)+NgÀ @g®Gáz.@g-²ï§!@g!@gé&1¬ü?gƒÀÊ¡E¶@g\Âõ(Ü @g…ëQ¸@g{®Gáº#@gP—nƒ@gh‘í|?õ!@g!°rh‘í@gj¼t“@gJ +‡@gáz®Ga@g!°rh‘í@gÁÊ¡E¶ó@g-²ï§@g)\Âõ(@gÃõ(\B#@g +‡Ù@gu“V @gÛù~j¼ô@gÑ"Ûù~ê@g¨ÆK7‰Á@g
×£p=J#@g®Gáz”@gòÒMbØ@g}?5^ºÉ#@g¾Ÿ/Ý$@g!°rh‘m@g-²ï§#@gJ +‡@gªñÒMb@gƒÀÊ¡Å@g-²ï§Æï?r†r…r‡rre)Údatarg)rjrrŽrCrl)rnroÚXÚXXr¶ÚmxÚmXÚmXXrYrYrZrzsŒû û zTestArrayMethods.setup_methodc    Csf|j\}}}}}}}| ¡}t| ¡| ¡ ¡ ¡ƒtt| ¡| ¡t|j| ¡ddƒƒdS)Nrr )    rlrõrÚtraceÚ
compressedrJrr[rg)    rnror'r(r¶r)r*r+ZmXdiagrYrYrZÚ
test_trace&s
ÿÿzTestArrayMethods.test_tracec    Csh|j\}}}}}}}| dd¡}tt|j|jƒƒtt|j| dd¡ƒƒtt|j|j dd¡ƒƒdS)Nr‡r²)rlZcliprr[rgr³)    rnror'r(r¶r)r*r+ZclippedrYrYrZÚ    test_clip.s
 zTestArrayMethods.test_clipc CsÈ|j\}}}}}}}|j\}}t| ¡| ¡ ¡ƒt |tj¡}    t |tj¡}
t|ƒD] } |dd…| f ¡ ¡|
| <qXt|ƒD]} ||  ¡ ¡|    | <q‚t    t
| d¡|
ƒƒt    t
| d¡|    ƒƒdS©Nrre) rlrCrZptpr-rjrPZfloat_rÎrr[) rnror'r(r¶r)r*r+rµÚrowsÚcolsÚkrYrYrZÚtest_ptp5s
  zTestArrayMethods.test_ptpc
CsZ|j\}}}}}}}| dd¡}tt|d|dd…dfƒƒ| dd¡}    t|    jdƒdS)Nrrer½r‡)r‡r‡r…r…)rlZswapaxesrr[rrC)
rnror'r(r¶r)r*r+Z    mXswappedZ
mXXswappedrYrYrZÚ test_swapaxesBs
  zTestArrayMethods.test_swapaxesc    Csd|j\}}}}}}}| d¡}tt|j| d¡ d¡ƒƒ| d¡}tt|j| d¡ d¡ƒƒdSr0)rlZcumprodrr[r³r©    rnror'r(r¶r)r*r+ZmXcprYrYrZÚ test_cumprodIs
 
 
zTestArrayMethods.test_cumprodc    Csd|j\}}}}}}}| d¡}tt|j| d¡ d¡ƒƒ| d¡}tt|j| d¡ d¡ƒƒdSr0)rlZcumsumrr[r³rr6rYrYrZÚ test_cumsumPs
 
 
zTestArrayMethods.test_cumsumc Cs(|j\}}}}}}}tt|jdd| ¡ ¡ƒƒtt|jdd| ¡ ¡ƒƒtt|jddj|jddjƒƒtt| ¡j| ¡jƒƒ|jdd|jdd}}    tdƒD]t}
tt|    |
||
 ¡ ¡ƒƒtt||
|dd…|
f ¡ ¡ƒƒttt     ||
¡|dd…|
f ¡ ¡ƒƒq®dS)Nr r…rrer†)
rlrr[Úvarr-ZstdrCrÎrjrH) rnror'r(r¶r)r*r+ZmXvar0ZmXvar1r3rYrYrZÚ test_varstdWs" &ÿzTestArrayMethods.test_varstdN) rrrrzr.r/r4r5r7r8r:rYrYrYrZr%s r%cCs,|tkr|tkS|tkr |tkS||k ¡Sr{)r9r
)rrrsrYrYrZres
r)bÚ    functoolsrrÚnumpyrjZnumpy.core.umathÚcorerZnumpy.core.fromnumericrZ numpy.testingrrrZnumpy.marrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r/r0r1r2r3r4r5r6r7r8r9r:r;r<r=r>r?r@rArBrCrDrErFrGrHrIrJrKrLrMrNrOrPZ numpy.compatrQrkr[r\rr%rrYrYrYrZÚ<module>s& ÿ5  .AW