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
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
U
P±dFÙã @sdZddlZddlZddlmZmZmZddlm    Z    ej
dej
dej
dej
dZ d    diid
did did did did did d id d iiidœ Z Gdd„dƒZ Gdd„dƒZGdd„dƒZGdd„dƒZGdd„dƒZGdd„dƒZGdd„dƒZGdd„dƒZGdd „d ƒZGd!d"„d"ƒZGd#d$„d$ƒZd%d&„Zd'd(„Zej d)d*d+d,d-g¡d.d/„ƒZGd0d1„d1ƒZej d)e  ¡¡d2d3„ƒZd4d5„Z ej d)d6d7e!ƒdd8d9g¡d:d;„ƒZ"ej d)e  ¡¡d<d=„ƒZ#ej d)e  ¡¡d>d?„ƒZ$ej d@e ¡ej d)e  ¡¡dAdB„ƒƒZ%dS)Cz(Tests for the array padding functions.
 
éN)Úassert_array_equalÚassert_allcloseÚ assert_equal)Ú    _as_pairsZuintÚintÚfloatÚcomplexÚconstant_valuesÚ
end_valuesÚ stat_lengthÚ reflect_typeZeven) ÚconstantÚedgeÚ linear_rampÚmaximumÚmeanÚmedianÚminimumÚreflectÚ    symmetricÚwrapÚemptyc@s<eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd S)Ú TestAsPairscCsht ddggd¡}ddgdggfD]}t|dƒ}t||ƒq$tƒ}tt|dƒt ||ggd¡ƒdS)z Test casting for a single value.éé
N©ÚnpÚarrayrrÚobject©ÚselfÚexpectedÚxÚresultÚobj©r%úTd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\numpy/lib/tests/test_arraypad.pyÚtest_single_value!s
 þzTestAsPairs.test_single_valuecCsÂt ddggd¡}ddgddggfD]}t|dƒ}t||ƒq&tƒ}ttd|gdƒt d|ggd¡ƒttdgdggdƒt ddgddgg¡ƒttdg|ggdƒt ddg||gg¡ƒdS)z-Test proper casting for two different values.rérÚaéNrrr%r%r&Útest_two_values.s"
  þþþzTestAsPairs.test_two_valuescCs0d}ttdddd|ƒttdddd|ƒdS)N)©NNr,r,rF©Zas_indexT)rr©r r!r%r%r&Útest_with_noneGs þ þzTestAsPairs.test_with_nonecCs$t d¡ d¡}tt|dƒ|ƒdS)z?Test if `x` already matching desired output are passed through.é )ér*r1N)rÚarangeÚreshaperrr.r%r%r&Útest_pass_throughRs
þzTestAsPairs.test_pass_throughc
CsÐttddgdddtjddggdtjdƒttddgdddtjdd    ggdtjdƒd
d
gd
ggd
d    gdd gd
d    ggd    d
ggd d ggdd dggfD],}tjtddt|dddW5QRXqždS)z Test results if `as_index=True`.gÍÌÌÌÌÌ@gffffff
@rTr-r©Údtypegö(\Âõ@r(éýÿÿÿéüÿÿÿér*é    éþÿÿÿznegative values©ÚmatchN)rrrrZintpÚpytestÚraisesÚ
ValueError)r r"r%r%r&Ú test_as_indexZsþþ(ÿzTestAsPairs.test_as_indexc    CsˆtjtddtdgggdƒW5QRXtjtddtddgddggdƒW5QRXtjtddtt d    ¡dƒW5QRXd
S) z"Ensure faulty usage is discovered.zmore dimensions than allowedr<rrzcould not be broadcastr9r*r(©r*rN)r>r?r@rrÚones)r r%r%r&Útest_exceptionsis  zTestAsPairs.test_exceptionsN)    Ú__name__Ú
__module__Ú __qualname__r'r+r/r4rArDr%r%r%r&r s   rc@sbeZdZej de ¡¡dd„ƒZej dddddg¡dd    „ƒZ    ej dddddg¡d
d „ƒZ
d S) ÚTestConditionalShortcutsÚmodecCs>t d¡ ddd¡}dd„|jDƒ}t|tj|||dƒdS)Néxr(ér1cSsg|]}d‘qS)©rrr%©Ú.0Ú_r%r%r&Ú
<listcomp>wszHTestConditionalShortcuts.test_zero_padding_shortcuts.<locals>.<listcomp>©rI©rr2r3ÚshaperÚpad©r rIÚtestÚpad_amtr%r%r&Útest_zero_padding_shortcutstsz4TestConditionalShortcuts.test_zero_padding_shortcutsrrrrcCsLt d¡ ddd¡}dd„|jDƒ}ttj||ddtj|||d    d
ƒdS) NrJr(rKr1cSsg|]}d‘qS)©r9r9r%rMr%r%r&rP}szITestConditionalShortcuts.test_shallow_statistic_range.<locals>.<listcomp>rrQr9©rIr rRrUr%r%r&Útest_shallow_statistic_rangezs
ÿz5TestConditionalShortcuts.test_shallow_statistic_rangecCsJt d¡ dd¡}dd„|jDƒ}ttj|||dtj|||ddƒdS)NérKr1cSsg|]}d‘qS))rrr%rMr%r%r&rP„szFTestConditionalShortcuts.test_clip_statistic_range.<locals>.<listcomp>rQrZrRrUr%r%r&Útest_clip_statistic_ranges
ÿz2TestConditionalShortcuts.test_clip_statistic_rangeN) rErFrGr>ÚmarkÚ parametrizeÚ
_all_modesÚkeysrXr[r]r%r%r%r&rHss 
 
rHc    @seZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dd„Z
dd„Z dd„Z dd„Z dd„Zdd„Zej dddddg¡d d!„ƒZej dddddg¡ej d"d#d$d%d&d'g¡d(d)„ƒƒZd*d+„Zej d,¡ej d-¡ej dddg¡d.d/„ƒƒƒZej dddg¡d0d1„ƒZd2S)3Ú TestStatisticc“Cs\t d¡ d¡}tj|dddd}t ddddddddddddddddddddddddddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdjdjdjdjdjdjdjdjdjdjdjdjdjdjdjdjdjdjdjdjg‘¡}t||ƒdS)lNédÚf)©éér)rB©r çà?ççð?ç@ç@ç@ç@ç@ç@ç @ç"@ç$@ç&@ç(@ç*@ç,@ç.@ç0@ç1@ç2@ç3@ç4@ç5@ç6@ç7@ç8@ç9@ç:@ç;@ç<@ç=@ç>@ç?@ç@@ç€@@çA@ç€A@çB@ç€B@çC@ç€C@çD@ç€D@çE@ç€E@çF@ç€F@çG@ç€G@çH@ç€H@çI@ç€I@çJ@ç€J@çK@ç€K@çL@ç€L@çM@ç€M@çN@ç€N@çO@ç€O@çP@ç@P@ç€P@çÀP@çQ@ç@Q@ç€Q@çÀQ@çR@ç@R@ç€R@çÀR@çS@ç@S@ç€S@çÀS@çT@ç@T@ç€T@çÀT@çU@ç@U@ç€U@çÀU@çV@ç@V@ç€V@çÀV@çW@ç@W@ç€W@çÀW@çX@ç@X@ç€X@çÀX@©rr2ÚastyperTrr©r r)Úbr%r%r&Útest_check_mean_stat_lengthŠsðÿz)TestStatistic.test_check_mean_stat_lengthc“CsRt d¡}t |dd¡}t dddddddddddddddddddddddddddddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdddddddddddddddddddddg‘¡}t||ƒdS)hNrcrerécrr9r*rr(rKr1éér:ré r0é éééééérgéééérféééér\éé é!é"é#é$é%é&é'é(é)é*é+é,é-é.é/é0é1é2é3é4é5é6é7é8é9é:é;é<é=é>é?é@éAéBéCéDéEéFéGéHéIéJéKéLéMéNéOéPéQéRéSéTéUéVéWéXéYéZé[é\é]é^é_é`éaéb©rr2rTrrrÐr%r%r&Útest_check_maximum_1¢s
ðÿz"TestStatistic.test_check_maximum_1c“CsVt d¡d}t |dd¡}t ddddddddddddddddddddddddddddddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdddddddddddddddddddddg‘¡}t||ƒdS)gNrcr9rerr*rr(rKr1rÔrÕr:rrÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓr*rÐr%r%r&Útest_check_maximum_2ºsðÿz"TestStatistic.test_check_maximum_2c“CsZt d¡d}tj|dddd}t ddddddddddddddddddddddddddddd    d
d d d dddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdddddddddddddddddddddg‘¡}t||ƒdS)hNrcr9rerrrhr*rr(rKr1rÔrÕr:rÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓr*rÐr%r%r&Útest_check_maximum_stat_lengthÒsðÿz,TestStatistic.test_check_maximum_stat_lengthc“CsRt d¡}t |dd¡}t ddddddddddddddddddddddddddddddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgddddddddddddddddddddg‘¡}t||ƒdS)hNrcrerrr9r*rr(rKr1rÔrÕr:rrÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓr*rÐr%r%r&Útest_check_minimum_1ês
ðÿz"TestStatistic.test_check_minimum_1c“CsVt d¡d}t |dd¡}t ddddddddddddddddddddddddddddddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddeddfddddddddddddddddddddg‘¡}t||ƒdS)gNrcr*rerrr(rKr1rÔrÕr:rrÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓéer*rÐr%r%r&Útest_check_minimum_2sðÿz"TestStatistic.test_check_minimum_2c“CsZt d¡d}tj|dddd}t ddddddddddddddddddddddddddddd    d
d d d dddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdd_d_d_d_d_d_d_d_d_d_d_d_d_d_d_d_d_d_d_d_g‘¡}t||ƒdS)hNrcr9rerrrhr*rr(rKr1rÔrÕr:rÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓr*rÐr%r%r&Útest_check_minimum_stat_lengthsðÿz,TestStatistic.test_check_minimum_stat_lengthc“CsXt d¡ d¡}t |dd¡}t ddddddddddddddddddddddddddddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdiddddddddddddddddddddg‘¡}t||ƒdS)jNrcrdrerçÀH@rjrkrlrmrnrorprqrrrsrtrurvrwrxryrzr{r|r}r~rr€rr‚rƒr„r…r†r‡rˆr‰rŠr‹rŒrrŽrrr‘r’r“r”r•r–r—r˜r™ršr›rœrržrŸr r¡r¢r£r¤r¥r¦r§r¨r©rªr«r¬r­r®r¯r°r±r²r³r´rµr¶r·r¸r¹rºr»r¼r½r¾r¿rÀrÁrÂrÃrÄrÅrÆrÇrÈrÉrÊrËrÌrÍrÎrÐr%r%r&Útest_check_median2sðÿzTestStatistic.test_check_medianc Cs„t dddgdddgdddgg¡}t |dd¡}t dddddgdddddgdddddgdddddgdddddgg¡}t||ƒdS©    Nrr9r(rKr:rÕr*r)rrrTrrÐr%r%r&Útest_check_median_01Js"     úÿ    z"TestStatistic.test_check_median_01c Csˆt dddgdddgdddgg¡}t |jdd¡j}t dddddgdddddgdddddgdddddgdddddgg¡}t||ƒdSr4)rrrTÚTrrÐr%r%r&Útest_check_median_02Xs"     úÿ    z"TestStatistic.test_check_median_02c“Cslt d¡ d¡}d|d<d|d<tj|ddd    d
}t dddddddddddddddddddddddddd ddd d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdddidjddddddddddddddddddddg‘¡}t||ƒdS)kNrcrdrlr9rÊr(rer©rrKrhrjrmrnrorprqrrrsrtrurvrwrxryrzr{r|r}r~rr€rr‚rƒr„r…r†r‡rˆr‰rŠr‹rŒrrŽrrr‘r’r“r”r•r–r—r˜r™ršr›rœrržrŸr r¡r¢r£r¤r¥r¦r§r¨r©rªr«r¬r­r®r¯r°r±r²r³r´rµr¶r·r¸r¹rºr»r¼r½r¾r¿rÀrÁrÂrÃrÄrÅrÆrÇrÈrÉrÌrÍrÎrÐr%r%r&Útest_check_median_stat_lengthfs ðÿz+TestStatistic.test_check_median_stat_lengthcCsÖdddgg}tj|dddd}t dddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgg ¡}t||ƒdS)Nr(rKr1©rKrÔrr*rh©rrTrrrÐr%r%r&Útest_check_mean_shape_one€s&              òÿz'TestStatistic.test_check_mean_shape_onec“CsXt d¡ d¡}t |dd¡}t ddddddddddddddddddddddddddddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdiddddddddddddddddddddg‘¡}t||ƒdS)jNrcrdrerr2rjrkrlrmrnrorprqrrrsrtrurvrwrxryrzr{r|r}r~rr€rr‚rƒr„r…r†r‡rˆr‰rŠr‹rŒrrŽrrr‘r’r“r”r•r–r—r˜r™ršr›rœrržrŸr r¡r¢r£r¤r¥r¦r§r¨r©rªr«r¬r­r®r¯r°r±r²r³r´rµr¶r·r¸r¹rºr»r¼r½r¾r¿rÀrÁrÂrÃrÄrÅrÆrÇrÈrÉrÊrËrÌrÍrÎrÐr%r%r&Útest_check_mean_2–sðÿzTestStatistic.test_check_mean_2rIrrrrcCsJt dddg¡tjdddgtjd}t |d|¡}t|d|dƒdS)z3 Test that appended and prepended values are equal éÿÿÿÿr*rgê-™—q=r5rYN)rrÚfloat64rTr)r rIr)r%r%r&Útest_same_prepend_append®s
&z&TestStatistic.test_same_prepend_appendr r;©r;©rr>©)rKr*)r;r©)r8©r*c    CsDt d¡ d¡}d}tjt|dtj|d||dW5QRXdS)Nr\©r1rKú#index can't contain negative valuesr<r*rh©rr2r3r>r?r@rT)r rIr Úarrr=r%r%r&Útest_check_negative_stat_length¼sz-TestStatistic.test_check_negative_stat_lengthcCs2t d¡}t |d¡}tj|dddd}t dddddd    d
d d
d
g
dddddd    d
d d
d
g
d d d d d dddddg
dddddd    d
d d
d
g
ddddddddddg
ddddddddddg
ddddddddddg
d d d d!d d"d#d$d#d#g
ddddddddddg
ddddddddddg
ddddddddddg
g ¡}t||ƒdS)%Nr\rF©rB©rr*r©rrZr1rKrÔrÕr:r9rr*rr(rÖrr0r×rØrÚrÙrÛrÜrÝrÞrgrßràrárârfrãrärå©rr2r3rTrrrÐr%r%r&Útest_simple_stat_lengthÆs$
 ôÿz%TestStatistic.test_simple_stat_lengthz)ignore:Mean of empty slice:RuntimeWarningzCignore:invalid value encountered in( scalar)? divide:RuntimeWarningcCs>tjddgd|dd}t tjddtjtjg¡}t||ƒdS)Nrkrl©r9r*rrh)rrTrÚnanr)r rIrIr!r%r%r&Útest_zero_stat_length_validÛsz)TestStatistic.test_zero_stat_length_validc    CsÈd}tjt|dtjddgd|ddW5QRXtjt|dtjddgd|ddW5QRXtjt|dtjddgd|ddW5QRXtjt|dtjddgd|ddW5QRXdS)    Nz,stat_length of 0 yields no value for paddingr<rkrlrrh)r9rr9)r>r?r@rrT©r rIr=r%r%r&Útest_zero_stat_length_invalidås   z+TestStatistic.test_zero_stat_length_invalidN)rErFrGrÒr+r,r-r.r0r1r3r5r7r9r<r=r>r^r_r@rJrOÚfilterwarningsrRrTr%r%r%r&rb‰sFü
 ÿ 
ÿrbc@s\eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dd„Z
dd„Z dd„Z dS)Ú TestConstantc“CsVt d¡}tj|dddd}t dddddddddddddddddddddddddddd    d
d d d dddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdiddddddddddddddddddddg‘¡}t||ƒdS)jNrcrer )rrg©r    rrr9r*rr(rKr1rÔrÕr:rÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓr*rÐr%r%r&Útest_check_constantós
ðÿz TestConstant.test_check_constantc“CsRt d¡}t |dd¡}t ddddddddddddddddddddddddddddddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgddddddddddddddddddddg‘¡}t||ƒdS)hNrcrer rr9r*rr(rKr1rÔrÕr:rrÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓr*rÐr%r%r&Útest_check_constant_zeros s
ðÿz&TestConstant.test_check_constant_zeroscCsÜt d¡ dd¡}tj|dddd}t dddddddddg    dd    dd
d d dddg    ddd ddddddg    dddddddddg    dddddddddg    dddd d!d"d#ddg    dddddddddg    dddddddddg    g¡}t||ƒdS)$Nr\rKr1rPr 皙™™™™ñ?©rIr    r9rr*rr(rÔrÕr:rrÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärå©rr2r3rTrr©r rIrVr!r%r%r&Útest_check_constant_float#s 
ÿ÷ÿ z&TestConstant.test_check_constant_floatcCsèt d¡ dd¡}| tj¡}tj|dddd}t dddddddddg    ddd    d
d d d ddg    dddddddddg    dddddddddg    dddddddddg    dd d!d"d#d$d%ddg    dddddddddg    dddddddddg    g¡}t||ƒdS)&Nr\rKr1©rPrPr rZr[rjrkrlrmrnrorprqrrrsrtrurvrwrxryrzr{r|r}r~rr€rr‚rƒr„r…r†r‡©rr2r3rÏr?rTrr)r rIZ    arr_floatrVr!r%r%r&Útest_check_constant_float27s" 
ÿ÷ÿ z'TestConstant.test_check_constant_float2c“CsZtjdtd}tj|dddd}t ddddddddddddddddddddddddddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldldldldldldldldldldldldldldldldldldldlg‘¡}t||ƒdS)mNrcr5rer )皙™™™™ñ¿ç333333ó¿rWrbrr9r*rr(rKr1rÔrÕr:rrÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓrc)rr2rrTrrrÐr%r%r&Útest_check_constant_float3Lsðÿz'TestConstant.test_check_constant_float3cCsÖt d¡ dd¡}tj|dddd}t ddddddddddg
dddd    d
dd dddg
dddd d dddddg
ddddddddddg
ddddddddddg
dddddd d!d"ddg
ddddddddddg
g¡}t||ƒdS)#Nr\rKr1)©r9rEr rr[rr9r*r(rÔrÕr:rrÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\r]r%r%r&Ú"test_check_constant_odd_pad_amountds
ÿøÿ z/TestConstant.test_check_constant_odd_pad_amountc Cs„t d¡ dd¡}tjj|dddd}t ddddddgdd    ddddgddddddgddddddgddddddgg¡}t||ƒdS)
Nr(r*)rP)r9rr )rP©rr(r[rr9r)rr2r3ÚlibrTrrr]r%r%r&Útest_check_constant_pad_2dus ÿüÿz'TestConstant.test_check_constant_pad_2dcCs”d}tjd|tjd}tj|dd| ¡d}tjd|tjd}t||ƒd}tjd|tjd}tj|dd| ¡d}tjd|tjd}t||ƒdS)    NlÿÿÿÿrKr5r9r r[rÔlÿÿÿÿ)rÚfullZuint64rTÚminrÚint64)r Z
uint64_maxrIrVr!Z    int64_maxr%r%r&Útest_check_large_integers‚s
z&TestConstant.test_check_large_integerscCsrtjdtd}tƒ}||d<tƒ}tƒ}tj|dd||fd}tjdtd}||d<||d<||d<t||ƒdS)Nr9r5rr )Ú    pad_widthrIr    rMr*)rrrrTr)r rIZobj_aZobj_bZobj_cr!r%r%r&Útest_check_object_arrays
ÿz$TestConstant.test_check_object_arraycCs2t d¡}tj|dddgdd}|jdks.t‚dS)N©rrr*©rrErer rQ©rr(r(©rÚzerosrTrSÚAssertionError©r rIr#r%r%r&Útest_pad_empty_dimensionŸs
z%TestConstant.test_pad_empty_dimensionN) rErFrGrXrYr^rardrfrirmrorwr%r%r%r&rVòs  rVc@sReZdZdd„Zdd„Zejjefddd„ƒZ    dd    „Z
ej  d
e ¡d d „ƒZ d S)ÚTestLinearRampc“Csbt d¡ d¡}tj|dddd}t ddd    d
d d d ddddddddddddddddddd d!d"d#dd$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dd€dd‚dƒd„d…d†d‡dˆd‰dŠd‹dSdŒddŽddd‘d’d“d”d$g‘¡}t||d•d•d–dS)—Nrcrdrer)r(rK)r
rng¸…ëQ¸@gq=
×£p @g)\Âõ( @gáz®Gá
@gš™™™™™    @gR¸…ëQ@g
×£p=
@gÃõ(\Â@g{®Gáz@g333333@gìQ¸…ë@g¤p=
×£@g¸…ëQ¸þ?g)\Âõ(ü?gš™™™™™ù?g
×£p=
÷?g{®Gázô?gìQ¸…ëñ?g¸…ëQ¸î?gš™™™™™é?g{®Gázä?g¸…ëQ¸Þ?g{®GázÔ?g{®GázÄ?rjrkrlrmrorprqrrrsrtrurvrwrxryrzr{r|r}r~rr€rr‚rƒr„r…r†r‡rˆr‰rŠr‹rŒrrŽrrr‘r’r“r”r•r–r—r˜r™ršr›rœrržrŸr r¡r¢r£r¤r¥r¦r§r¨r©rªr«r¬r­r®r¯r°r±r²r³r´rµr¶r·r¸r¹rºr»r¼r½r¾r¿rÀrÁrÂrÃrÄrÅrÆrÇrÈrÉrÊrËrÌrÍg33333“W@gffffffV@gš™™™™9U@gÍÌÌÌÌ T@gàR@g33333³Q@gfffff†P@g33333³N@gš™™™™YL@gfffff¦G@gÍÌÌÌÌLE@g33333óB@gš™™™™™@@g€<@gÍÌÌÌÌÌ7@gš™™™™3@gÍÌÌÌÌÌ,@gffffff#@gñh㈵øä>)ZrtolZatol)rr2rÏrTrrrÐr%r%r&Útest_check_simple¦sðÿz TestLinearRamp.test_check_simplecCsät d¡ dd¡ tj¡}tj|dddd}t dddddddddg    dddd    d
d d d
dg    dddd
d d dd dg    dddddddddg    dddddddddg    ddddddd d!dg    dd"ddd#dd!d$dg    dddddddddg    g¡}t||ƒdS)%Nrgr(rK)r*r*rrL©rIr
rjrirkgø?rlrmrng@rorprqrrrsg@rtrurvrwrxg@ryrzr{r|r}g#@g@g!@g@r`r]r%r%r&Ú test_check_2d¾sùÿ    zTestLinearRamp.test_check_2d)Ú
exceptionsc Csˆddlm}t |ddƒ|ddƒg¡}tj|dddd}t |dd    ƒ|d
d    ƒ|d d    ƒ|d d    ƒ|d d    ƒ|dd    ƒ|dd    ƒg¡}t||ƒdS)Nr)ÚFractionr9r*r>rBrrzr0rr1éúÿÿÿr8r;)Z    fractionsr}rrrTr)r r}rIÚactualr!r%r%r&Útest_object_arrayÌs ù    z TestLinearRamp.test_object_arraycCsztjt d¡ dd¡ddd}t|dd…dfd    ƒt|dd…d
fd    ƒt|ddd…fd    ƒt|d
dd…fd    ƒdS) z!Ensure that end values are exact.rr*rK)éßé{rrQNrrjr>)rrTrCr3r)r r)r%r%r&Útest_end_valuesßs
zTestLinearRamp.test_end_valuesr6cCs”tjdg|d}tj|dddd}tjdddddddg|d}t||ƒtjdg|d}tj|dddd}tjdddddddg|d}t||ƒdS)    a<
        Check correct behavior of unsigned dtypes if there is a negative
        difference between the edge to pad and `end_values`. Check both cases
        to be independent of implementation. Test behavior for all other dtypes
        in case dtype casting interferes with complex dtypes. See gh-14191.
        rr5rrrzr9r*N)rrrTr)r r6r"r#r!r%r%r&Útest_negative_differenceçs
z'TestLinearRamp.test_negative_differenceN)rErFrGryr{r>r^Zxfailrur€rƒr_Ú_numeric_dtypesr„r%r%r%r&rx¥s
 rxc@sDeZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dS)Ú TestReflectc“CsRt d¡}t |dd¡}t dddddd    d
d d d dddddddddddddddddddddddddddddddd d d d
d    dddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdfdedddcdbdad`d_d^d]d\d[dZdYdXdWdVdUdTdSg‘¡}t||ƒdS)hNrcrerrfráràrßrÞrgrÝrÜrÛrÚrÙrØr×r0rÖrr:rÕrÔr1rKr(rr*r9rrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓr*rÐr%r%r&ryûs
ðÿzTestReflect.test_check_simplec“CsVt d¡}tj|dddd}t dddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dd€dd‚ddƒd„d…d†d‡dˆd‰dŠd‹dŒddŽddd‘d’d“d”d•g‘¡}t||ƒdS)–NrcrerÚodd©r içÿÿÿéèÿÿÿééÿÿÿéêÿÿÿéëÿÿÿéìÿÿÿéíÿÿÿéîÿÿÿéïÿÿÿéðÿÿÿéñÿÿÿéòÿÿÿéóÿÿÿéôÿÿÿéõÿÿÿéöÿÿÿé÷ÿÿÿéøÿÿÿéùÿÿÿr~éûÿÿÿr8r7r;r>rr9r*rr(rKr1rÔrÕr:rrÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓr/éfégéhéiéjékéléménéoépéqérésétéuévéwr*rÐr%r%r&Útest_check_odd_methods
ðÿz!TestReflect.test_check_odd_methodcCsúdddgdddgg}t |dd¡}t dddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgg¡}t||ƒdS)Nr(rKr1rÔrÕr:rr;rÐr%r%r&Útest_check_large_pad+s(              ñÿz TestReflect.test_check_large_padcCsÒdddgg}t |dd¡}t dddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgg ¡}t||ƒdS)Nr(rKr1r:rr;rÐr%r%r&Útest_check_shapeBs&              òÿzTestReflect.test_check_shapec    Cs:t dddgdd¡}t dddddddg¡}t||ƒdS©Nr9r*rrr;rÐr%r%r&Ú test_check_01XszTestReflect.test_check_01c Cs>t dddgdd¡}t dddddddddg    ¡}t||ƒdSr±r;rÐr%r%r&Ú test_check_02]szTestReflect.test_check_02c CsBt dddgdd¡}t dddddddddddg ¡}t||ƒdS)Nr9r*rr(rr;rÐr%r%r&Ú test_check_03bs zTestReflect.test_check_03N)
rErFrGryr®r¯r°r²r³r´r%r%r%r&r†úsr†c@sPeZdZdZej dee     ¡ddhƒ¡dd„ƒZ
ej de     ¡¡dd„ƒZ d    S)
ÚTestEmptyArrayz<Check how padding behaves on arrays with an empty dimension.rIr rc    Cs’d}tjt|dtjgd|dW5QRXtjt|dtjt d¡d|dW5QRXtjt|dtjt d¡d|dW5QRXdS)NzFcan't extend empty axis 0 using modes other than 'constant' or 'empty'r<r(rQr)rr)rerq)r>r?r@rrTZndarrayrtrSr%r%r&rwks z'TestEmptyArray.test_pad_empty_dimensioncCs(tjt d¡d|d}|jdks$t‚dS)N)r*rr*)rMrqrerQ)rÕrr()rrTrCrSru)r rIr#r%r%r&Útest_pad_non_empty_dimensionzsz+TestEmptyArray.test_pad_non_empty_dimensionN) rErFrGÚ__doc__r>r^r_Úsortedr`rarwr¶r%r%r%r&rµhsý
 
rµc@sLeZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dd„Z
dS)Ú TestSymmetricc“CsRt d¡}t |dd¡}t dddddd    d
d d d ddddddddddddddddddddddddddddddd d d d
d    ddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdgdfdedddcdbdad`d_d^d]d\d[dZdYdXdWdVdUdTg‘¡}t||ƒdS)hNrcrerráràrßrÞrgrÝrÜrÛrÚrÙrØr×r0rÖrr:rÕrÔr1rKr(rr*r9rrfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓr*rÐr%r%r&rys
ðÿzTestSymmetric.test_check_simplec“CsVt d¡}tj|dddd}t dddd    d
d d d dddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dd€dddd‚dƒd„d…d†d‡dˆd‰dŠd‹dŒddŽddd‘d’d“g‘¡}t||ƒdS)”Nrcrerr‡rˆr‰rŠr‹rŒrrŽrrr‘r’r“r”r•r–r—r˜r™ršr~r›r8r7r;r>rr9r*rr(rKr1rÔrÕr:rrÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓr/rœrržrŸr r¡r¢r£r¤r¥r¦r§r¨r©rªr«r¬r*rÐr%r%r&r®™s
ðÿz#TestSymmetric.test_check_odd_methodcCsúdddgdddgg}t |dd¡}t dddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgg¡}t||ƒdS)Nr(rKr1rÔrÕr:rr;rÐr%r%r&r¯±s(              ñÿz"TestSymmetric.test_check_large_padcCsþdddgdddgg}tj|dddd    }t d
d d d d d dddddddddgd
d d d d d dddddddddgd d d ddddddddddddgd d d ddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgg¡}t||ƒdS)Nr(rKr1rÔrÕr:rr‡rˆr7r;r>rr9r*rr:rrÖr0r×rØrÙrÚrÛrÜr;rÐr%r%r&Útest_check_large_pad_oddÉs(              ñÿz&TestSymmetric.test_check_large_pad_oddcCsÒdddgg}t |dd¡}t dddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgdddddddddddddddgg ¡}t||ƒdS)Nr(rKr1r:rr;rÐr%r%r&r°às&              òÿzTestSymmetric.test_check_shapec    Cs:t dddgdd¡}t dddddddg¡}t||ƒdS©Nr9r*rrr;rÐr%r%r&r²öszTestSymmetric.test_check_01c Cs>t dddgdd¡}t dddddddddg    ¡}t||ƒdSr»r;rÐr%r%r&r³ûszTestSymmetric.test_check_02cCsJt dddgdd¡}t dddddddddddddddg¡}t||ƒdS)Nr9r*rr1rr;rÐr%r%r&r´s(zTestSymmetric.test_check_03N) rErFrGryr®r¯rºr°r²r³r´r%r%r%r&r¹€sr¹c@s<eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd S)ÚTestWrapc“CsRt d¡}t |dd¡}t dddddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdddddd    d
d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0g‘¡}t||ƒdS)hNrcrerrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)rÓrr9r*rr(rKr1rÔrÕr:rrÖr0r×rØrÙrÚrÛrÜrÝrgrÞrßràrárfrârãrärår\rærçrèrérêrërìrírîrïrðrñròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr    r
r r r rrrrr*rÐr%r%r&rys
ðÿzTestWrap.test_check_simplec4Cs‚t d¡}t |d¡}t |dd¡}t ddddddddddddddddddddddddddgd    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
gd dddd dddd dddd dddd dddd dddd dgddddddddddddddddddddddddddgd    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
gd dddd dddd dddd dddd dddd dddd dgddddddddddddddddddddddddddgd    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
gd dddd dddd dddd dddd dddd dddd dgddddddddddddddddddddddddddgd    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
gd dddd dddd dddd dddd dddd dddd dgddddddddddddddddddddddddddgd    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
gd dddd dddd dddd dddd dddd dddd dgddddddddddddddddddddddddddgd    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
gd dddd dddd dddd dddd dddd dddd dgddddddddddddddddddddddddddgd    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
gd dddd dddd dddd dddd dddd dddd dgddddddddddddddddddddddddddgd    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
gd dddd dddd dddd dddd dddd dddd dgddddddddddddddddddddddddddgg¡}t||ƒdS)Nr0rg)rr0rrrÖrÕr:r*rrr9r1rÔr(rKrNrÐr%r%r&r¯s4
 "ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿ"ÿÎÿ6zTestWrap.test_check_large_padc Cs>t dddgdd¡}t dddddddddg    ¡}t||ƒdS)Nr9r*rrr;rÐr%r%r&r²[szTestWrap.test_check_01c CsBt dddgdd¡}t dddddddddddg ¡}t||ƒdS)Nr9r*rr(rr;rÐr%r%r&r³`s zTestWrap.test_check_02cCs8t d¡}tj|ddd}t||dd…dd…fƒdS)Nr8)rrKrrQr›)rrCrTrrÐr%r%r&Útest_pad_with_zeroes
zTestWrap.test_pad_with_zerocCsxt d¡}tj|ddd}ttj||||fdd…|ƒt d¡}tj|ddd}ttj||||fdd…|ƒdS)    zy
        Check wrapping on each side individually if the wrapped area is longer
        than the original array.
        rK)r0rrrQrN)rr0r7)rr2rTrZr_rÐr%r%r&Útest_repeated_wrappingjs 
 
zTestWrap.test_repeated_wrappingN)    rErFrGryr¯r²r³r½r¾r%r%r%r&r¼s <r¼c@seZdZdd„Zdd„ZdS)ÚTestEdgecCsÞt d¡}t |d¡}t |dd¡}t ddddddddgddddddddgddddddddgddddd    d
d
d
gd d d d d d d d gddddddddgddddddddgddddddddgddddddddgg    ¡}t||ƒdS©Nr0©r(rrKrrr9r*rr(rKr1rÔrÕr:rrÖrNrÐr%r%r&ryys 
 öÿ zTestEdge.test_check_simplecCs¼t dddg¡}t |dd¡}t ddddddg¡}t||ƒt dddgdddgg¡}t |dd¡}t |d    d¡}t||ƒt d
¡ ddd¡}t |dd¡}t |d d¡}t||ƒdS) Nr9r*r)rPrr(rKr1r_rá)rPrPrP)rrrTrr2r3)r r)Zpaddedr!r%r%r&Útest_check_width_shape_1_2Œs
 
z#TestEdge.test_check_width_shape_1_2N)rErFrGryrÂr%r%r%r&r¿xsr¿c@seZdZdd„Zdd„ZdS)Ú    TestEmptycCsRt d¡ dd¡}tj|ddgdd}|jdks4t‚t||d    d
…d d …fƒdS) Nrár(r1rB)rr9rrQ)r:rr*r7rr>©rr2r3rTrSrurrvr%r%r&Ú test_simple szTestEmpty.test_simplecCs2t d¡}tj|dddgdd}|jdks.t‚dS)NrprqrErerrQrrrsrvr%r%r&rw¦s
z"TestEmpty.test_pad_empty_dimensionN)rErFrGrÅrwr%r%r%r&rßsrÃcCs dd„}t d¡ dd¡}t |d|¡}t dddddddgdddddddgdddddddgdddd    d
ddgdddddddgdddddddgg¡}t||ƒdS) NcSs&d|d|d…<d||d d…<dS)Nrrr9r%)ZvectorrnZiaxisÚkwargsr%r%r&Ú _padwithtens­sz6test_legacy_vector_functionality.<locals>._padwithtensr1r*rrrr9r(rKrN)rÇr)rÑr%r%r&Ú test_legacy_vector_functionality¬sùÿ
rÈcCs4tjdgddd}t dddddg¡}t||ƒdS)Nr9r*r rQrr;)r)rÑr%r%r&Útest_unicode_modeÀsrÉrIrrrrcCs:tjddd}d}tjddd}ttj|||d|ƒdS)NrÁ)Z
fill_valuerK)r:rÕrQ)rrjrrT)rIr)rWrÑr%r%r&Útest_object_inputÆsrÊc @s
eZdZej dddddg¡ej de ¡¡dd„ƒƒZej de ¡¡d    d
„ƒZ    ej dd d d ddg¡ej de ¡¡dd„ƒƒZ
ej dddde ƒdfdde fe ddƒdfdg¡ej de ¡¡dd„ƒƒZ dd„Zej dd d!d"g¡ej de ¡¡d#d$„ƒƒZdS)%Ú TestPadWidthrn)r(rKr1rÔ)rerErM)rPrg)rKr1))rr(rK)rr9r*rIc    Cs@t d¡ d¡}d}tjt|dt |||¡W5QRXdS)Nr\rFz(operands could not be broadcast togetherr<rH©r rnrIrIr=r%r%r&Útest_misshaped_pad_widthÐsz%TestPadWidth.test_misshaped_pad_widthc    Cs@t d¡ d¡}d}tjt|dt |d|¡W5QRXdS)Nr\rFzDinput operand has more dimensions than allowed by the axis remappingr<))rM)r()rK)rqrerErH)r rIrIr=r%r%r&Útest_misshaped_pad_width_2Ýsz'TestPadWidth.test_misshaped_pad_width_2r;rArBrCrDc    Cs@t d¡ d¡}d}tjt|dt |||¡W5QRXdS)Nr\rFrGr<rHrÌr%r%r&Útest_negative_pad_widthåsz$TestPadWidth.test_negative_pad_widthzpad_width, dtype)Ú3N)ÚwordNr,N)g333333 @N))r*rr(rLr9r>)))gÍÌÌÌÌÌÀrrLNc    Csªt d¡ d¡}d}|dk    rPtjt|dt |tj||d|¡W5QRXnVtjt|dt |||¡W5QRXtjt|dt |t |¡|¡W5QRXdS)Nr\rFz%`pad_width` must be of integral type.r<r5)rr2r3r>r?Ú    TypeErrorrTr)r rnr6rIrIr=r%r%r&Ú test_bad_typeîs $zTestPadWidth.test_bad_typecCsät d¡}t |d¡}t |t d¡d¡}t ddddddddgddddddddgddddddddgddddd    d
d
d
gd d d d d d d d gddddddddgddddddddgddddddddgddddddddgg    ¡}t||ƒdSrÀrNrÐr%r%r&Útest_pad_width_as_ndarrays 
 öÿ z&TestPadWidth.test_pad_width_as_ndarrayrrL)rLrLcCs,t d¡ dd¡}t|tj|||dƒdS)Nr\r1rKrQ)rr2r3rrT)r rnrIrIr%r%r&Útest_zero_pad_widthsz TestPadWidth.test_zero_pad_width)rErFrGr>r^r_r`rarÍrÎrÏrrrÓrÔrÕr%r%r%r&rËÏs@ü 
 ÿ  ø
 rËc
Csšt|}i}t ¡D]}||kr| |¡qtjdddgd|f|Ž| ¡D]H\}}d |¡}tjt    |d"tjdddgd|f||iŽW5QRXqLdS)z1Test behavior of pad's kwargs for the given mode.r9r*rz+unsupported keyword arguments for mode '{}'r<N)
r`ÚvaluesÚupdaterrTÚitemsÚformatr>r?r@)rIÚallowedÚ not_allowedrÆÚkeyÚvaluer=r%r%r&Ú test_kwargs s  
rÞcCs0t ddg¡}tt |d¡ddddddgƒdS)Nr9r*r)rrrrT)rIr%r%r&Útest_constant_zero_default1srßr9ÚconstTFc    Cs>d |¡}tjt|dtjdddgd|dW5QRXdS)Nzmode '{}' is not supportedr<r9r*rr(rQ)rÙr>r?r@rrT)rIr=r%r%r&Útest_unsupported_mode6s
rácCs`t d¡ dd¡ddd…ddd…f}t |d|¡}|jdksBt‚t|dd…dd…f|ƒdS)Nrár(r1r*rB)rÔrÕr7rÄ)rIrIr#r%r%r&Útest_non_contiguous_array=s&râcCsPtjddd}t |d|¡jds&t‚tjddd}t |d|¡jdsLt‚dS)    z5Test if C and F order is preserved for all pad modes.)rKrÚC)ÚorderrKZ C_CONTIGUOUSÚFZ F_CONTIGUOUSN)rrCrTÚflagsru)rIr"r%r%r&Útest_memory_layout_persistenceEsrçr6cCs0tjd|d}tj|d|d}|j|ks,t‚dS)N)rr*r9r5r9rQ)rrtrTr6ru)r6rIrIr#r%r%r&Útest_dtype_persistenceNsrè)&r·r>ÚnumpyrZ numpy.testingrrrZnumpy.lib.arraypadrZsctypesr…r`rrHrbrVrxr†rµr¹r¼r¿rÃrÈrÉr^r_rÊrËrarÞrßrrárârçrèr%r%r%r&Ú<module>sp ÿþýÿõSk4Unr' 
Q