zmc
2023-10-12 ed135d79df12a2466b52dae1a82326941211dcc9
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
256
257
258
259
260
261
262
263
264
265
266
U
P±d"ã@sêddlZddlZddlZddlmZmZmZmZm    Z    m
Z
m Z m Z m Z ddlmZddlZGdd„dƒZGdd„dƒZGdd    „d    ƒZGd
d „d ƒZGd d „d ƒZGdd„dƒZGdd„dƒZejje ddGdd„dƒƒZGdd„dƒZdS)éN)    Úassert_Ú assert_raisesÚ assert_equalÚ assert_warnsÚassert_no_warningsÚassert_array_equalÚassert_array_almost_equalÚsuppress_warningsÚIS_WASM)Úrandomc@s4eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd S) ÚTestSeedcCs<tj d¡}t| d¡dƒtj d¡}t| d¡dƒdS)Nréèi¬ìÿÿi£)Únpr Ú RandomStaterÚrandint©ÚselfÚs©rúUd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\numpy/random/tests/test_random.pyÚ test_scalars  zTestSeed.test_scalarcCs‚tj tdƒ¡}t| d¡dƒtj t d¡¡}t| d¡dƒtj dg¡}t| d¡dƒtj dg¡}t| d¡dƒdS)Né
r iÔriÍri    )rr rÚrangerrÚarangerrrrÚ
test_arrayszTestSeed.test_arraycCs$tttjjdƒtttjjdƒdS)Nçà¿éÿÿÿÿ©rÚ    TypeErrorrr rÚ
ValueError©rrrrÚtest_invalid_scalar szTestSeed.test_invalid_scalarcCsftttjjdgƒtttjjdgƒtttjjdgƒtttjjdddgƒtttjjdddgƒdS)Nrrléééþÿÿÿrr!rrrÚtest_invalid_array%s
zTestSeed.test_invalid_arraycCsXtttjjtjgtjdƒtttjjdddggƒtttjjdddgdddggƒdS)N©Údtyper#r$éééé)rr rr rÚarrayÚint64r!rrrÚtest_invalid_array_shape-s
ÿÿz!TestSeed.test_invalid_array_shapeN)Ú__name__Ú
__module__Ú __qualname__rrr"r&r/rrrrr s
 
r c@seZdZdd„Zdd„ZdS)Ú TestBinomialcCsBtjddd}dD]*}tt d|¡dkƒtt ||¡|ƒqdS)Nr$Úintr')rçà?r#r)rÚzerosrr Úbinomialr)rr6ÚprrrÚ test_n_zero7szTestBinomial.test_n_zerocCstttjdtjƒdS)Nr#)rr r r7rÚnanr!rrrÚ test_p_is_nan@szTestBinomial.test_p_is_nanN)r0r1r2r9r;rrrrr36s    r3c@s4eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd S) ÚTestMultinomialcCst dddg¡dS)Néd皙™™™™É?皙™™™™é?©r Ú multinomialr!rrrÚ
test_basicFszTestMultinomial.test_basiccCst ddddddg¡dS)Nr=r>r?çr@r!rrrÚtest_zero_probabilityIsz%TestMultinomial.test_zero_probabilitycCsZtdt dd¡kodknƒt ddd¡}tt d|k¡ƒtt |dk¡ƒdS)Néûÿÿÿrr+)rr rrÚall)rÚxrrrÚtest_int_negative_intervalLs$z*TestMultinomial.test_int_negative_intervalcCsÐddg}ttj d|t d¡¡jdƒttj d|t d¡¡jdƒttj d|t d¡¡jdƒttj d|ddg¡jdƒttj d|d¡jdƒttj d|t d¡¡jdƒtttjjd|t    dƒƒdS)Nr5r#©r#r$r$©r$r$r$©r$r$)
rrr rAÚuint32Úshaper-rrÚfloat©rr8rrrÚ    test_sizeRsÿÿzTestMultinomial.test_sizec    Cs€tttjjdddggƒtttjjddgdggƒtttjjddgdggdgdgggƒtttjjdt ddgddgg¡ƒdS)Nrrr#)rr rr rAr-r!rrrÚtest_multidimensional_pvals`s&z+TestMultinomial.test_multidimensional_pvalsN)r0r1r2rBrDrHrPrQrrrrr<Es
r<c@s<eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd S)Ú TestSetStatecCs$d|_t |j¡|_|j ¡|_dS©NiÒ–I)Úseedr rÚprngÚ    get_stateÚstater!rrrÚ setup_methodhszTestSetState.setup_methodcCs<|j d¡}|j |j¡|j d¡}tt ||k¡ƒdS)Né)rUZtomaxintÚ    set_staterWrrrF©rÚoldÚnewrrrrBms  zTestSetState.test_basiccCs@|jjdd}|j |j¡|jjdd}tt ||k¡ƒdS©Nr)©Úsize)rUÚstandard_normalrZrWrrrFr[rrrÚtest_gaussian_resetssz TestSetState.test_gaussian_resetcCsR|j ¡|j ¡}|jjdd}|j |¡|jjdd}tt ||k¡ƒdSr^)rUrarVrZrrrF)rrWr\r]rrrÚ test_gaussian_reset_in_media_reszs 
 
 z-TestSetState.test_gaussian_reset_in_media_rescCsz|jdd…}|jjdd}|j |¡|jjdd}|j |j¡|jjdd}tt ||k¡ƒtt ||k¡ƒdS)Nr%rYr_)rWrUrarZrrrF)rÚ    old_stateÚx1Zx2Zx3rrrÚtest_backwards_compatibility…s z)TestSetState.test_backwards_compatibilitycCs|j dd¡dS©Nr5)rUÚnegative_binomialr!rrrÚtest_negative_binomial‘sz#TestSetState.test_negative_binomialN)    r0r1r2rXrBrbrcrfrirrrrrRgs   rRc    @s|eZdZejjZejejej    ej
ej ej ej ejejg    Zdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Zdd„ZdS)Ú TestRandintcCstt|jdtddS©Nr#r')rrÚrfuncrNr!rrrÚtest_unsupported_typeŸsz!TestRandint.test_unsupported_typecCs |jD]”}|tjkrdn
t |¡j}|tjkr2dnt |¡jd}tt|j|d||dtt|j||d|dtt|j|||dtt|jdd|dqdS)Nrr$r#r')    ÚityperÚbool_ÚiinfoÚminÚmaxrr rl)rÚdtÚlbndÚubndrrrÚtest_bounds_checking¢s
z TestRandint.test_bounds_checkingcCs´|jD]¨}|tjkrdn
t |¡j}|tjkr2dnt |¡jd}|d}t|j||dd|d|ƒ|}t|j||dd|d|ƒ||d}t|j||dd|d|ƒqdS)Nrr$r#r ©r`r()rnrrorprqrrrrl)rrsrtruÚtgtrrrÚtest_rng_zero_and_extremes«s
 z&TestRandint.test_rng_zero_and_extremesc Cs|jD]„}|tjkrdn
t |¡j}|tjkr2dnt |¡jd}z|j|||dWqtk
rˆ}ztdt    |ƒƒ‚W5d}~XYqXqdS)Nrr$r#r'zMNo error should have been raised, but one was with the following message:
 
%s)
rnrrorprqrrrlÚ    ExceptionÚAssertionErrorÚstr)rrsrtruÚerrrÚtest_full_range¹s
þzTestRandint.test_full_rangecCs’tj ¡|jdd…D]@}dD]6}|jd|d|d}t| ¡|kƒt| ¡dkƒq q|jdddtjd}t| ¡dkƒt| ¡dkƒdS)Nr#)r*érYr$irwr)    rr rTrnrlrrrrqro)rrsruÚvalsrrrÚtest_in_bounds_fuzzÇs
zTestRandint.test_in_bounds_fuzzc
Csòddl}ddddddddddœ    }|jdd…D]r}tj d    ¡tjd
kr\|jdd d |d }n|jdd d |d  ¡}|     | 
tj ¡¡  ¡}t |t |¡j|kƒq.tj d    ¡|jddd td  
tj ¡}|     |¡  ¡}t |t t¡j|kƒdS)NrZ@509aea74d792fb931784c4b0135392c65aec64beee12b0cc167548a2c3d31e71Z@7b07f1a920e46f6d0fe02314155a2330bcfd7635e708da50e536c5ebb631a7d4Z@e577bfed6c935de944424667e3da285012e741892dcb7051a8f1ce68ab05c92fZ@0fbead0b06759df2cfb55e43148822d4a1ff953c7eb19a5b08445a63bb64fa9eZ@001aac3a5acb935a9b186cbe14a1ca064b8bb2dd0b045d48abeacf74d0203404)    ÚboolÚint16Úint32r.Úint8Úuint16rLÚuint64Úuint8r#iÒÚlittler,r rwr$)Úhashlibrnrr rTÚsysÚ    byteorderrlZbyteswapÚsha256Úviewr…Ú    hexdigestrr(Únamer‚)rrŠrxrsÚvalÚresrrrÚtest_repeatabilityÖs,ø
 
 zTestRandint.test_repeatabilitycCs`tj}t tj¡j}t t tj¡j¡}t t tj¡jd¡}tjj|||d}t||ƒdSrk)rr.rprrr‡r rr)rrsrxrtruÚactualrrrÚtest_int64_uint64_corner_case÷s z)TestRandint.test_int64_uint64_corner_casecCsà|jD]^}|tjkrdn
t |¡j}|tjkr2dnt |¡jd}|j|||d}t|jt |¡ƒqt    t
tj j fD]f}|t    kr„dn
t |¡j}|t    krœdnt |¡jd}|j|||d}t t|dƒ ƒtt|ƒ|ƒqtdS)Nrr$r#r'r()rnrrorprqrrrlrr(r‚r4ÚcompatÚlongrÚhasattrÚtype)rrsrtruÚsamplerrrÚtest_respect_dtype_singletons
z(TestRandint.test_respect_dtype_singletonN)r0r1r2rr rrlror…rˆrƒr†r„rLr.r‡rnrmrvryr~rr“r•r›rrrrrj—sÿ    !rjc@sªeZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dd„Z
dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd „Zd!d"„Zd#d$„Zd%d&„Zej d'ejej ¡ej ¡g¡d(d)„ƒZej d'ejej ¡ej ¡g¡ej d*d+d,g¡d-d.„ƒƒZd/d0„Zd1d2„Z d3d4„Z!d5d6„Z"d7d8„Z#d9d:„Z$d;d<„Z%d=d>„Z&d?d@„Z'dAdB„Z(dCdD„Z)dEdF„Z*dGdH„Z+dIdJ„Z,dKdL„Z-dMdN„Z.dOdP„Z/dQdR„Z0dSdT„Z1dUdV„Z2dWdX„Z3dYdZ„Z4d[d\„Z5d]d^„Z6d_d`„Z7dadb„Z8dcdd„Z9dedf„Z:dgdh„Z;didj„Z<dkdl„Z=dmdn„Z>dodp„Z?dqdr„Z@dsdt„ZAdudv„ZBdwdx„ZCdydz„ZDd{d|„ZEd}d~„ZFdd€„ZGdd‚„ZHdƒd„„ZId…d†„ZJd‡dˆ„ZKd‰dŠ„ZLd‹dŒ„ZMddŽ„ZNdd„ZOd‘d’„ZPd“d”„ZQd•d–„ZRd—S)˜ÚTestRandomDistcCs
d|_dSrS©rTr!rrrrX%szTestRandomDist.setup_methodcCsJtj |j¡tj dd¡}t ddgddgddgg¡}t||d    d
dS) Nr)r$ç_®\±*Íã?琛˜¬”îâ?ç<îpì?ç®,º¥oˆì?çˆÂÉHÝ?çZ±­°êæè?é©Údecimal)rr rTZrandr-r©rr”ÚdesiredrrrÚ    test_rand(s
þzTestRandomDist.test_randcCsJtj |j¡tj dd¡}t ddgddgddgg¡}t||d    d
dS) Nr)r$çÿ!ã<Oqõ?ç4ðu,Íû?çÁ³½3Ûû÷?çL«I/DÍ¿çà@ËÀŽ?@çÿ HSÓ\@r¤r¥)rr rTZrandnr-rr§rrrÚ
test_randn0s
þzTestRandomDist.test_randncCsJtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||ƒdS) Néÿÿÿéc©r)r$r_ér)éÌÿÿÿé)éÐÿÿÿé¾ÿÿÿ)rr rTrr-rr§rrrÚ test_randint8s
þzTestRandomDist.test_randintc    Csvtj |j¡tƒ2}| t¡}tjjdddd}tt|ƒdkƒW5QRXt     ddgdd    gd
d gg¡}t
||ƒdS) Nr±r²r³r_r#r´r)rµr¶r·r¸) rr rTr    ÚrecordÚDeprecationWarningÚrandom_integersrÚlenr-r©rÚsupÚwr”r¨rrrÚtest_random_integers@s
 
þz#TestRandomDist.test_random_integersc    Csdtƒ>}| t¡}tj t d¡jt d¡j¡}tt    |ƒdkƒW5QRXt d¡j}t
||ƒdS)NÚlr#) r    rºr»rr r¼rprrrr½rr¾rrrÚtest_random_integers_max_intKs
 
ÿ z+TestRandomDist.test_random_integers_max_intc    Cs^t ¡Lt dt¡tttjjt d¡j    ƒtttjjt d¡j    t d¡j    ƒW5QRXdS)NÚerrorrÂ)
ÚwarningsÚcatch_warningsÚ simplefilterr»rrr r¼rprrr!rrrÚtest_random_integers_deprecatedZs
 
þ
 
þz.TestRandomDist.test_random_integers_deprecatedcCsHtj |j¡tj d¡}t ddgddgddgg¡}t||dd    dS)
Nr³ržrŸr r¡r¢r£r¤r¥)rr rTr-rr§rrrÚ test_randomhs 
þzTestRandomDist.test_randomcCs<tj |j¡tj dd¡}t ddddg¡}t||ƒdS)Nr*r$r)©rr rTÚchoicer-rr§rrrÚtest_choice_uniform_replacepsz*TestRandomDist.test_choice_uniform_replacecCsHtj |j¡tjjddddddgd}t ddddg¡}t||ƒdS)Nr*皙™™™™Ù?皙™™™™¹?©r8r#r$rÊr§rrrÚtest_choice_nonuniform_replacevsz-TestRandomDist.test_choice_nonuniform_replacecCs>tj |j¡tjjdddd}t dddg¡}t||ƒdS)Nr*r)F©Úreplacerr#rÊr§rrrÚtest_choice_uniform_noreplace|sz,TestRandomDist.test_choice_uniform_noreplacecCsHtj |j¡tjjdddddddgd}t ddd    g¡}t||ƒdS)
Nr*r)FrÎg333333Ó?r5©rÒr8r$r#rÊr§rrrÚ test_choice_nonuniform_noreplace‚s  
ÿz/TestRandomDist.test_choice_nonuniform_noreplacecCsDtj |j¡tj ddddgd¡}t ddddg¡}t||ƒdS)NÚaÚbÚcÚdr*rÊr§rrrÚtest_choice_noninteger‰sz%TestRandomDist.test_choice_nonintegerc    CsFtjj}tt|ddƒtt|ddƒtt|ddgddggdƒtt|gdƒtt|ddddgdddgddggdtt|ddgdd    d    d
gdtt|ddgdd d gdtt|ddgdd    d    gdtt|dddgdd dtt|dddgdd dtt|dddgdd dtt|dddgdd dtt|dddgdd dddgddS)Nrr)g@r#r$r*gÐ?rÏrÍr>gš™™™™™ñ?gš™™™™™¹¿FrÑr%)r)rr#rrÔ)rr rËrr )rršrrrÚtest_choice_exceptionss&ÿÿz%TestRandomDist.test_choice_exceptionsc    Cs<ddg}tt tjjddd¡ƒtt tjjddd¡ƒtt tjjdd|d¡ƒtt tjjdd|d¡ƒtt tjjddgdd¡ƒttjjdgdddkƒt ddg¡}tjdtd    }||d
<ttjj|dd|kƒtƒ}tt tjjd|dd¡ ƒtt tjjd|dd¡ ƒtt tjjd|d|d¡ ƒtt tjjd|d|d¡ ƒtt tjjddg|dd¡ ƒttjjdg|ddj    d
kƒt ddg¡}tjdtd    }||d
<ttjj||dd 
¡|kƒd }ddddd d g}t tjjd|ddj |ƒt tjjd|ddj |ƒt tjjd|d|dj |ƒt tjjd|d|dj |ƒt tjjt  d¡|ddj |ƒt tjjd
d
ddj dƒt tjjd
dd
dj dƒt tjjddd
dj dƒt tjjd
d
dj dƒt tjjgddj dƒt tjjddgddj dƒtttjjgdƒdS)NrÎçÍÌÌÌÌÌì?r$TrÑFrÔr#r'r)r$r)rÍr>r,)r)rr*r_iöÿÿÿ)rrrÖr×)rrZisscalarr rËr-ÚemptyÚobjectÚtupleÚndimÚitemrrMrrrr )rr8rÖÚarrrrrrÚtest_choice_return_shape¢sL  " ÿz'TestRandomDist.test_choice_return_shapecCs2t dddg¡}dddg}tttjj||ddS)Né*r#r$rÏ)rr-rr r rË)rrÖr8rrrÚtest_choice_nan_probabilitiesÐs
z,TestRandomDist.test_choice_nan_probabilitiescCs,tj |j¡tj d¡}d}t||ƒdS)Nrs
‚Uižÿ—+Wf¥)rr rTÚbytesrr§rrrÚ
test_bytesÕs zTestRandomDist.test_bytesc Cs°dd„dd„dd„dd„dd„dd„dd„d    d„d
d„d d„d d„f D]d}tj |j¡|d dddddddddg
ƒ}tj |¡|}|dd ddddddddg
ƒ}t||ƒqFdS)NcSs
t g¡S©N)rr-©rGrrrÚ<lambda>Þóz-TestRandomDist.test_shuffle.<locals>.<lambda>cSs|SrèrrérrrrêßrëcSst |¡ tj¡Srè)rÚasarrayÚastyper…rérrrrêàrëcSst |¡ tj¡Srè)rrìríÚfloat32rérrrrêárëcSst |¡ tj¡Srè)rrìríZ    complex64rérrrrêârëcSst |¡ t¡Srè)rrìrírÞrérrrrêãrëcSsdd„|DƒS)NcSsg|] }||f‘qSrr©Ú.0ÚirrrÚ
<listcomp>äsúATestRandomDist.test_shuffle.<locals>.<lambda>.<locals>.<listcomp>rrérrrrêärëcSst dd„|Dƒ¡S)NcSsg|] }||g‘qSrrrïrrrròåsró)rrìrérrrrêårëcSst ||g¡jSrè)rZvstackÚTrérrrrêærëcSs*t dd„|Dƒdtfdtfg¡ tj¡S)NcSsg|] }||f‘qSrrrïrrrròèsrórÖr×)rrìr4rŽZrecarrayrérrrrêèsÿþcSs$t dd„|Dƒdtfdtjfg¡S)NcSsg|] }||f‘qSrrrïrrrròìsrórÖr×)rrìrÞr„rérrrrêìsÿr#r$r)r*r+r,éré    r)rr rTÚshuffler)rÚconvÚalistr”r¨rrrÚ test_shuffleÛs$ò zTestRandomDist.test_shufflecCsÄtj t tdƒd¡ddd¡}tj t d¡ddd¡}| ¡}| ¡}tdƒD]h}tj |¡t    t
|j |j ƒt
|j |j ƒƒtj |¡t    t
|j |j ƒt
|j |j ƒƒqVdS)Né)r+r*r)r#ré2) rÚmaZ masked_valuesZreshaperrÚcopyr r÷rÚsortedÚdataÚmask)rrÖr×Za_origZb_origrñrrrÚtest_shuffle_maskedõs"  ÿ ÿz"TestRandomDist.test_shuffle_maskedr c    CsNddddddddœ}tjtd    d
}| |¡W5QRXd |djksJt‚dS) Nrr#r$r)r*r+r,)rr#r$r)r*r+r,z!you are shuffling a 'dict' object©ÚmatchrÉ)ÚpytestÚwarnsÚ UserWarningr÷Úfilenamer{)rr ÚvaluesZrecrrrÚtest_shuffle_untyped_warningsÿz+TestRandomDist.test_shuffle_untyped_warningÚuse_array_likeTFc    sÞGdd„dtjƒ}dt dg¡t d¡t d¡t d¡g}tj|td}dd„|Dƒ‰|rd| |¡}t‡fd    d
„|Dƒƒs~t‚|r¶t|tj    j
ƒs¶t j t d d | |¡W5QRXn$| |¡t‡fd d
„|DƒƒsÚt‚dS)Nc@s eZdZdS)z>TestRandomDist.test_shuffle_no_object_unpacking.<locals>.MyArrN)r0r1r2rrrrÚMyArrsr r)rrõr'cSsh|] }t|ƒ’qSr©ÚidrïrrrÚ    <setcomp>szBTestRandomDist.test_shuffle_no_object_unpacking.<locals>.<setcomp>c3s|]}t|ƒˆkVqdSrèr rï©Zitem_idsrrÚ    <genexpr>szBTestRandomDist.test_shuffle_no_object_unpacking.<locals>.<genexpr>z#Shuffling a one dimensional array.*rc3s|]}t|ƒˆkVqdSrèr rïrrrr&s)rÚndarrayr-Úfloat64rÞrŽrFr{Ú
isinstancer Ú    Generatorrrrr÷)rr r r ÚitemsrârrrÚ test_shuffle_no_object_unpacking s&
ÿ
ÿ
z/TestRandomDist.test_shuffle_no_object_unpackingcCs¨tj |j¡t d¡j}tj |¡tt |¡dddddgƒtj |j¡}| |¡tt |¡dddddgƒtj     |j¡}| |¡tt |¡dddddgƒdS)Nr+rr#r*r)r$)
rr rTrrr÷rrìrÚ default_rng)rrÖÚrngrrrÚtest_shuffle_memoryview(s  
 
z&TestRandomDist.test_shuffle_memoryviewc    Cs<t d¡}d|j_tjtddtj |¡W5QRXdS)Nr)Fz    read-onlyr)    rr6ÚflagsZ    writeablerZraisesr r r÷)rrÖrrrÚtest_shuffle_not_writeable7s
z)TestRandomDist.test_shuffle_not_writeablecCsNtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||d d dS) NrÎrÜr³r_gAàÁKč?g‘ñØhA?g õ҇o¿>gάXfÈ+q?gSâë1Ã$?g'8zXŒ ?r¤r¥)rr rTÚbetar-rr§rrrÚ    test_beta=sþÿzTestRandomDist.test_betacCsJtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||ƒdS) Nr=gÉv¾Ÿ/Ý?r³r_é%é+räé0é.é-)rr rTr7r-rr§rrrÚ test_binomialFs
þzTestRandomDist.test_binomialcCsLtj |j¡tjjddd}t ddgddgdd    gg¡}t||d
d dS) Nrür³r_g+Qð]uðO@gëòìÇ+Q@gY7`´ZqP@gÈe‡(fŒG@gþv¯t€R@gEIȋR@é r¥)rr rTÚ    chisquarer-rr§rrrÚtest_chisquareNs
þzTestRandomDist.test_chisquarecCsttj |j¡t ddg¡}tjjj|dd}t ddgddggd    d
gd d ggd dgddggg¡}t||dddS)Nç“­I<ÝI@ç÷ÉEZßC@r³r_gÉi{ ßsá?gn,    åAÝ?göÇ]‹^óã?gpDéBØ?gȧ#¼yªá?gr°¸‡ «Ü?g—«1UÞâ?gÈѨœUCÚ?g£…^,%÷â?g»ôB§µÚ?gډOoX;â?gMì`!O‰Û?r¤r¥)rr rTr-ÚmtrandÚ    dirichletr)rÚalphar”r¨rrrÚtest_dirichletVs
ÿÿÿüzTestRandomDist.test_dirichletcCsÈt ddg¡}ttj |t d¡¡jdƒttj |t d¡¡jdƒttj |t d¡¡jdƒttj |ddg¡jdƒttj |d¡jdƒttj |t d¡¡jdƒtttjj|t    dƒƒdS)Nr(r)r#rIr$rJrK)
rr-rr r+rLrMrrrNrOrrrÚtest_dirichlet_sizebsz"TestRandomDist.test_dirichlet_sizecCst ddg¡}tttjjj|ƒtttjddggƒtttjdgdggƒtttjdgdggdgdgggƒtttjt ddgddgg¡ƒdS)NgHáz®Gá?g¼‰Ø—²Òœ¼r+r#)rr-rr r r*r+)rr,rrrÚtest_dirichlet_bad_alphans "z'TestRandomDist.test_dirichlet_bad_alphacCsLtj |j¡tjjddd}t ddgddgdd    gg¡}t||d
d dS) Ngï8EGrùñ?r³r_gN÷·Uñ?gbI0æð?gùVU\õº@gˆ:€ì3ù@g©ºUýå?gŸ"qoû?r¤r¥)rr rTÚ exponentialr-rr§rrrÚtest_exponentialys
þzTestRandomDist.test_exponentialcCs*ttjjdddƒtttjjdddS©Nr©Úscaleç€)rrr r0rr r!rrrÚtest_exponential_0sz!TestRandomDist.test_exponential_0cCsNtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||d d dS) Né éMr³r_g7¶„ó?gµ`j‹ü?g6¶"+÷?gܳ2>•‰ó?g‘cÍ>+Yð?g¡_}áS‚õ?r¤r¥)rr rTÚfr-rr§rrrÚtest_f…s
þzTestRandomDist.test_fcCsNtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||d d dS) Nr+r)r³r_gԏGMçš8@g §â”ÈŒ<@g˜    ´":@gÂvÀñÇ#)@gZQø·?@gr‚‚[•¦@@ér¥)rr rTÚgammar-rr§rrrÚ
test_gammas
þzTestRandomDist.test_gammacCs.ttjjddddƒtttjjddddS)Nr)rMr4r5)rrr r<rr r!rrrÚ test_gamma_0•szTestRandomDist.test_gamma_0cCsHtj |j¡tjjddd}t ddgddgddgg¡}t||ƒdS)    Nç_c97ݚ¿?r³r_rrõér+r7)rr rTÚ    geometricr-rr§rrrÚtest_geometric™s
þzTestRandomDist.test_geometriccCsNtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||d d dS) Nr?ç@r³©Úlocr4r`gåûؕßÉ?g¨s0íÖ?gÊð#0÷¿gï(ôx”÷¿g-¶KÇD´ñ?géůp`@æ¿r¤r¥)rr rTÚgumbelr-rr§rrrÚ test_gumbel¡s
þzTestRandomDist.test_gumbelcCs*ttjjdddƒtttjjdddSr2)rrr rFrr r!rrrÚ test_gumbel_0©szTestRandomDist.test_gumbel_0cCs tj |j¡tjjddddd}t ddgddgddgg¡}t||ƒtjjdddd    d}t ddddg¡}t||ƒtjjd
dd d    d}t d d d d g¡}t||ƒtjjdddd    d}t ddddg¡}t||ƒtjjdd
d d    d}t ddddg¡}t||ƒdS) Nrr+r;r³r_rörr)r*r¤r7)rr rTÚhypergeometricr-rr§rrrÚtest_hypergeometric­s&
þ
 
 
 
z"TestRandomDist.test_hypergeometriccCsNtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||d d dS) Nr?rCr³rDgð¥ bÙOå?g¹Â¸ëÉçà?gpJmµú    @g{KÏ*Ët    @g•:^w-š«¿gˆY~oõûû?r¤r¥)rr rTÚlaplacer-rr§rrrÚ test_laplaceÇs
þzTestRandomDist.test_laplacecCs*ttjjdddƒtttjjdddSr2)rrr rKrr r!rrrÚtest_laplace_0ÏszTestRandomDist.test_laplace_0cCsNtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||d d dS) Nr?rCr³rDg#€K-zñ?g€îJš¬ë?g92ÄÜ@gرã÷[@gê#+^ÑÀË¿g¢¥-óâ@r¤r¥)rr rTÚlogisticr-rr§rrrÚ test_logisticÓs
þzTestRandomDist.test_logisticcCsNtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||d d dS) Nr?rCr³)ÚmeanÚsigmar`g›ŽòÚɁ0@goÎ,+4FB@gùƒ)Ê­6@g†§5éêæ?gnþxN—nP@g…©)‡úµU@r%r¥)rr rTÚ    lognormalr-rr§rrrÚtest_lognormalÛs
þzTestRandomDist.test_lognormalcCs*ttjjdddƒtttjjdddS)Nr)rQr#r5)rrr rRrr r!rrrÚtest_lognormal_0ãszTestRandomDist.test_lognormal_0cCsHtj |j¡tjjddd}t ddgddgddgg¡}t||ƒdS)Ngƀ@õŒí?r³)r8r`r$r,r@r))rr rTÚ    logseriesr-rr§rrrÚtest_logseriesçs
þzTestRandomDist.test_logseriesc Cs˜tj |j¡tjjddgddd}t ddddd    d    gdd    d
d    d    d ggddddd dgd    d ddddggddd    dd    dgdddd    ddggg¡}t||ƒdS) NrûçUUUUUUÅ?r,r³r_r*r)r+r$rr#r)rr rTrAr-rr§rrrÚtest_multinomialïsÿÿÿüzTestRandomDist.test_multinomialc    CsRtj |j¡d}ddgddgg}d}tj |||¡}t ddgddggd    d
gd d ggd dgddggg¡}t||ddtj ||¡}t ddg¡}t||ddddg}ddgddgg}tttjj||ƒttjj||ddt    t
tjj||ddtjddgddggtj d}t ƒ0}tj ||¡|  t¡}t|ƒdksDt‚W5QRXdS)N)r?rr#rr³g4¸Výj÷?g¾±Ž¥y'@g÷I1‰õù?g—SÙBïŠ#@gû …ªe<@gÒÔ4W(@g6ŠR¿„û?gò9r
v"@g‹–сæ?g{§×ïÂ#@gò4Íx›—¿gÇçú"öf"@r¤r¥gN}©O6¦ì?gÐÇYM÷W"@r$Úignore)Z check_validÚraiserÎr')rr rTZmultivariate_normalr-rrÚRuntimeWarningrrr rîr    rºr½r{)rrPZcovr`r”r¨r¿rÀrrrÚtest_multivariate_normalúsB
ÿÿÿü ÿÿ
z'TestRandomDist.test_multivariate_normalcCsJtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||ƒdS) Nr=g|ò°Pkš¿?r³)Únr8r`iPiIi|ici i‡)rr rTrhr-rr§rrrri"s
þz%TestRandomDist.test_negative_binomialcCsÔtj |j¡tjjdddd}t ddgddgdd    gg¡}t||d
d tjjd d dd}t ddgddgddgg¡}t||d
d tj |j¡tjjdddd}t ddgddgddgg¡}t||d
d dS)Nr+r³)ÚdfÚnoncr`gôûÖGë7@g!©ÈÜ´*@gž1}“z9?@g¹+驸™0@g26E_r#@g¦I!ó1@r;r¥r5r>g÷ô‹÷?g’šT¶ˆDÃ?gÀõ?Tƒ?gÍ+òqnlð?gÓ~|òùDÕ?gë°¬òÇÃ?rg›{¿0¾1#@gpާ²rs'@gþ~;ïÑÓ$@g"‹†dIŽ @gö°Õöë÷*@g Ñ}Ÿ'Á,@)rr rTÚnoncentral_chisquarer-rr§rrrÚtest_noncentral_chisquare*s(
þ
þ
þz(TestRandomDist.test_noncentral_chisquarecCsPtj |j¡tjjddddd}t ddgdd    gd
d gg¡}t||d d dS)Nr+r$r#r³)ÚdfnumÚdfdenr_r`gŒ^ýíå~ö?gƒ/+c¢äÕ?g"¡®.ž @gü†Œ÷Ž´@g×7í§ŸþÛ?g»ŒE·Öò?r;r¥)rr rTÚ noncentral_fr-rr§rrrÚtest_noncentral_f?s ÿ
þz TestRandomDist.test_noncentral_fcCsNtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||d d dS) Nr?rCr³rDgíœ&&n@gO»G_Ê @gÜ~w²ø@gtÁÜûw]Õ¿gm&¨5ú½@gŒñ$È>Û@r¤r¥)rr rTÚnormalr-rr§rrrÚ test_normalHs
þzTestRandomDist.test_normalcCs*ttjjdddƒtttjjdddSr2)rrr rfrr r!rrrÚ test_normal_0PszTestRandomDist.test_normal_0cCsPtj |j¡tjjddd}t ddgddgdd    gg¡}tjj||d
d dS) Nr?r³©rÖr`gÅWò˜ I£@g ùÔ¨y–@gy£Ÿ]Ó0‰Ag1~ÖÒ\AgåËíãša@gÑY„
²7Aé)Znulp)rr rTÚparetor-ÚtestingZassert_array_almost_equal_nulpr§rrrÚ test_paretoTsþÿ
zTestRandomDist.test_paretocCsHtj |j¡tjjddd}t ddgddgddgg¡}t||ƒdS)Nr?r³)Úlamr`rr#)rr rTÚpoissonr-rr§rrrÚ test_poissoncs
þzTestRandomDist.test_poissoncCs`t d¡j}d}tttjj|ƒtttjj|gdƒtttjj|ƒtttjj|gdƒdS)NrÂrr)rrprrrr r ro)rZlambigZlamnegrrrÚtest_poisson_exceptionsks  z&TestRandomDist.test_poisson_exceptionscCsLtj |j¡tjjddd}t ddgddgdd    gg¡}t||d
d dS) Nr?r³rigõ;•'û”?gÜ´èwÞ*?g׆5›Ø?gF¡GÙ?gÆËD]?gýÞ$`°ÉÀ?r¤r¥)rr rTÚpowerr-rr§rrrÚ
test_powerss
þzTestRandomDist.test_powercCsLtj |j¡tjjddd}t ddgddgdd    gg¡}t||d
d dS) Nrr³)r4r`g"íu¨ÈÆ+@gîN$MBÄ*@g7v8Bô4@gêÿª55@geãˆ&@g~ŽÓ£ÌZ1@r;r¥)rr rTÚrayleighr-rr§rrrÚ test_rayleigh{s
þzTestRandomDist.test_rayleighcCs*ttjjdddƒtttjjdddSr2)rrr rtrr r!rrrÚtest_rayleigh_0ƒszTestRandomDist.test_rayleigh_0cCsJtj |j¡tjjdd}t ddgddgddgg¡}t||d    d
dS) Nr³r_gMo³DL®è?g6Ï([9ÀgðºrF=òí?gÉM'    -™ÀgóV¼ëûÀgVA:ìQyÇ?r¤r¥)rr rTZstandard_cauchyr-rr§rrrÚtest_standard_cauchy‡s
þz#TestRandomDist.test_standard_cauchycCsJtj |j¡tjjdd}t ddgddgddgg¡}t||d    d
dS) Nr³r_g°ö–܁Üî?gc!z¨ì?g&N˜¥"@g¬NIàŠÇ@gFÇï>ú’ã?g¡~‚MEø?r¤r¥)rr rTZstandard_exponentialr-rr§rrrÚtest_standard_exponentials
þz(TestRandomDist.test_standard_exponentialcCsLtj |j¡tjjddd}t ddgddgdd    gg¡}t||d
d dS) Nr)r³)rMr`g)§ž@g¾§Ä¾¤„@gd]‰,qÂ@gP‡kÌ{@g9B #Œ1@gÔÚv÷‡ @r;r¥)rr rTÚstandard_gammar-rr§rrrÚtest_standard_gamma—s
þz"TestRandomDist.test_standard_gammacCs*ttjjdddƒtttjjdddS)Nr)rMr5)rrr ryrr r!rrrÚtest_standard_gamma_0Ÿsz$TestRandomDist.test_standard_gamma_0cCsJtj |j¡tjjdd}t ddgddgddgg¡}t||d    d
dS) Nr³r_rªr«r¬r­r®r¯r¤r¥)rr rTrar-rr§rrrÚtest_standard_normal£s
þz#TestRandomDist.test_standard_normalcCsLtj |j¡tjjddd}t ddgddgdd    gg¡}t||d
d dS) Nrr³)r^r`g\VÔHÂï?gßhUÍ%›¶¿gÿH$ðMÏõ?güøüL›³á¿gV«qdz¥Ç¿g㖀Õý“ã?r¤r¥)rr rTÚ
standard_tr-rr§rrrÚtest_standard_t«s
þzTestRandomDist.test_standard_tcCsPtj |j¡tjjddddd}t ddgdd    gd
d gg¡}t||d d dS)Ng{®Gáz@gö(\Âu$@g×£p=
W4@r³)ÚleftÚmodeÚrightr`g:§}ŒÂ\)@ghرTjÓ(@g‡Ç¨L‰30@g6ڜ™ÅA0@g6¤õ—sh&@gœí<Šáþ,@r;r¥)rr rTÚ
triangularr-rr§rrrÚtest_triangular³s ÿ
þzTestRandomDist.test_triangularcCsNtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||d d dS) Nç®Gáz®ó?g®Gáz%@r³)ÚlowÚhighr`g>#¥HÃö@g£¨uºó@g•Ý#@g„}d]#@gø†‰N¶õ@g­w )*ó @r¤r¥)rr rTÚuniformr-rr§rrrÚ test_uniform¼s
þzTestRandomDist.test_uniformcCsšt d¡j}t d¡j}tjj}tt|tj dƒtt|dtjƒtt|||ƒtt|tj gdgƒtt|dgtjgƒtjjt     |d¡|dddS)NrNrr#g Ø…W4vC)r…r†)
rZfinforqrrr r‡rÚ OverflowErrorÚinfZ    nextafter)rZfminZfmaxÚfuncrrrÚtest_uniform_range_boundsÄs  z(TestRandomDist.test_uniform_range_boundscCsnGdd„dtjƒ}t d¡ |¡}tttjj||ƒGdd„dtjƒ}t d¡ |¡}tttjj|ddƒdS)Nc@seZdZdd„ZdS)zGTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingFloatcSst‚dSrè©rr!rrrÚ    __float__ÜszQTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingFloat.__float__N)r0r1r2rŽrrrrÚ ThrowingFloatÛsrgð?c@seZdZdd„ZeZdS)zITestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingIntegercSst‚dSrèrr!rrrÚ__int__äszQTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingInteger.__int__N)r0r1r2rÚ    __index__rrrrÚThrowingIntegerãsr’r#)    rrr-rŽrrr r‡rI)rrZthrowing_floatr’Z throwing_intrrrÚ!test_scalar_exception_propagationÔs ÿz0TestRandomDist.test_scalar_exception_propagationcCsNtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||d d dS) Nr„ç¤p=
×£ø?r³©ÚmuÚkappar`gL×üZI@g¦¢'N"@gÀ·…þkrØ?g”k=mœ@g¹ډó?gÜ^Ì=\ý?r¤r¥)rr rTÚvonmisesr-rr§rrrÚ test_vonmisesìs
þzTestRandomDist.test_vonmisescCs:tj |j¡tjjdddd}tj t |¡ ¡¡dS)NrCg g5_PŸG>i@Br•)rr rTr˜rlrÚisfiniterF)rÚrrrrÚtest_vonmises_smallôsz"TestRandomDist.test_vonmises_smallcCsNtj |j¡tjjdddd}t ddgddgd    d
gg¡}t||d d dS) Nr„r”r³)rPr4r`gÉZ¥ƒ¢@g-ïŸ g†@g¦8
ÄÖmÖ?gÃÎVP"ø?g`Vô áÎ?gx©^½&3Ì?r;r¥)rr rTÚwaldr-rr§rrrÚ    test_waldús
þzTestRandomDist.test_waldcCsLtj |j¡tjjddd}t ddgddgdd    gg¡}t||d
d dS) Nr„r³rig@–Ý6ï?g¦Óé]Aí?g(Ã1Ú¥Rþ?gù¤U þ?g“Í2§_uå?g^}-­Qö?r¤r¥)rr rTÚweibullr-rr§rrrÚ test_weibulls
þzTestRandomDist.test_weibullcCs@tj |j¡ttjjdddt d¡ƒtttjjdddS)Nrr7rir5)rÖ)rr rTrrŸr6rr r!rrrÚtest_weibull_0
szTestRandomDist.test_weibull_0cCsHtj |j¡tjjddd}t ddgddgddgg¡}t||ƒdS)    Nr„r³riéBér#r)r%)rr rTÚzipfr-rr§rrrÚ    test_zipfs
þzTestRandomDist.test_zipfN)Sr0r1r2rXr©r°r¹rÁrÃrÈrÉrÌrÐrÓrÕrÚrÛrãrårçrúrrÚmarkZ parametrizerr rrr
rrrrr$r'r-r.r/r1r6r:r=r>rBrGrHrJrLrMrOrSrTrVrXr\rirarergrhrmrprqrsrurvrwrxrzr{r|r~rƒrˆrŒr“r™rœržr r¡r¥rrrrrœ!s  .ÿ
ÿ         (        rœc@s eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dd„Z
dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd „Zd!d"„Zd#d$„Zd%d&„Zd'd(„Zd)d*„Zd+d,„Zd-d.„Zd/d0„Zd1d2„Zd3d4„Zd5d6„Zd7d8„Zd9d:„Zd;d<„Z d=d>„Z!d?d@„Z"dAS)BÚ TestBroadcastcCs
d|_dS)NiÍ[rr!rrrrXszTestBroadcast.setup_methodcCstj |j¡dSrè)rr rTr!rrrÚsetSeedszTestBroadcast.setSeedcCspdg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||dd| ¡|||dƒ}t||dddS)    Nrr#çºlö×÷ á?ç_x ¤¥á?ç =å*BNà?r)r;r¥)rr r‡r-r¨r)rr…r†r‡r¨r”rrrrˆ$sþzTestBroadcast.test_uniformcCsšdg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||dd    tt||d|ƒ| ¡|||dƒ}t||dd    tt|||dƒdS)
Nrr#rg-rö´@g¦Y®lõ@g-µ`¦wý?r)r;r¥)rr rfr-r¨rrr )rrEr4Ú    bad_scalerfr¨r”rrrrg4s þzTestBroadcast.test_normalcCsÄdg}dg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||d    d
tt||d|ƒtt||d|ƒ| ¡|||dƒ}t||d    d
tt|||dƒtt|||dƒdS) Nr#r$rr%gnÍQVfÉ?gV©‹šKB³?g v®`køÏ?r)r;r¥)rr rr-r¨rrr )rrÖr×Úbad_aZbad_brr¨r”rrrrGs&þzTestBroadcast.test_betacCsZdg}dg}tjj}t dddg¡}| ¡||dƒ}t||ddtt||dƒdS©    Nr#rgö.Ug¬Zè?giPrqè?gçÅE KÌæ?r)r;r¥)rr r0r-r¨rrr )rr4r¬r0r¨r”rrrr1]sþ zTestBroadcast.test_exponentialcCsZdg}dg}tjj}t dddg¡}| ¡||dƒ}t||ddtt||dƒdSr®)rr ryr-r¨rrr )rrMÚ    bad_shapeZ    std_gammar¨r”rrrrzjsþ z!TestBroadcast.test_standard_gammacCsÄdg}dg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||d    d
tt||d|ƒtt||d|ƒ| ¡|||dƒ}t||d    d
tt|||dƒtt|||dƒdS) Nr#r$rr%gö.Ug¬Zø?giPrqø?gçÅE KÌö?r)r;r¥)rr r<r-r¨rrr )rrMr4r¯r¬r<r¨r”rrrr=ws&þzTestBroadcast.test_gammacCsÄdg}dg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||d    d
tt||d|ƒtt||d|ƒ| ¡|||dƒ}t||d    d
tt|||dƒtt|||dƒdS) Nr#r$rr%gb—yʜé?g»åoðÄë?gT¹æ7Í@r)r;r¥)rr r9r-r¨rrr )rrbrcÚ    bad_dfnumÚ    bad_dfdenr9r¨r”rrrr:s&þzTestBroadcast.test_fc
Csfdg}dg}dg}dg}dg}dg}tjj}t ddd    g¡}| ¡||d||ƒ}    t|    |d
d tt||d||ƒtt||d||ƒtt||d||ƒ| ¡|||d|ƒ}    t|    |d
d tt|||d|ƒtt|||d|ƒtt|||d|ƒ| ¡||||dƒ}    t|    |d
d tt||||dƒtt||||dƒtt||||dƒdS) Nr$r)r*rrr%gÈr±^G"@g/ *@g‹°Ñ†š!@r;r¥)rr rdr-r¨rrr )
rrbrcr_r°r±Úbad_noncZnonc_fr¨r”rrrre£s:þzTestBroadcast.test_noncentral_fcCs<| ¡t ddg¡}tjjddddd}t||dddS)Ng¬ªaŒ‚z@gn4M;î%é?rÜr$r_r;r¥)r¨rr-r rdr)rr¨r”rrrÚtest_noncentral_f_small_dfÄsz(TestBroadcast.test_noncentral_f_small_dfcCsZdg}dg}tjj}t dddg¡}| ¡||dƒ}t||ddtt||dƒdS)    Nr#rg~¼}ÐN?â?g‘$FŽŸà?g'rSèÀ?r)r;r¥)rr r&r-r¨rrr )rr^Úbad_dfr&r¨r”rrrr'Êsþ zTestBroadcast.test_chisquarecCsÄdg}dg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||d    d
tt||d|ƒtt||d|ƒ| ¡|||dƒ}t||d    d
tt|||dƒtt|||dƒdS) Nr#r$rr%g©ç wÌ"@g2 øêWR@gˆâRY@r)r;r¥)rr r`r-r¨rrr )rr^r_r´r²Znonc_chir¨r”rrrra×s&þz'TestBroadcast.test_noncentral_chisquarecCsZdg}dg}tjj}t dddg¡}| ¡||dƒ}t||ddtt||dƒdS)    Nr#rgT Äò@g~‹Fžl@gƚtøpð?r)r;r¥)rr r}r-r¨rrr )rr^r´Útr¨r”rrrr~ísþ zTestBroadcast.test_standard_tcCsšdg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||dd    tt||d|ƒ| ¡|||dƒ}t||dd    tt|||dƒdS)
Nr$r#rg´®W!è@güOBº¦ÀgÈ}Ç?àý¿r)r;r¥)rr r˜r-r¨rrr )rr–r—Z    bad_kappar˜r¨r”rrrr™ús þzTestBroadcast.test_vonmisescCsZdg}dg}tjj}t dddg¡}| ¡||dƒ}t||ddtt||dƒdS)    Nr#rg&ƒ8¾?ò?geâFXò?gªÕ‹ËŸð?r)r;r¥)rr rkr-r¨rrr )rrÖr­rkr¨r”rrrrm sþ zTestBroadcast.test_paretocCsZdg}dg}tjj}t dddg¡}| ¡||dƒ}t||ddtt||dƒdSr®)rr rŸr-r¨rrr )rrÖr­rŸr¨r”rrrr sþ zTestBroadcast.test_weibullcCsZdg}dg}tjj}t dddg¡}| ¡||dƒ}t||ddtt||dƒdS)    Nr#rr©rªr«r)r;r¥)rr rrr-r¨rrr )rrÖr­rrr¨r”rrrrs'sþ zTestBroadcast.test_powercCsšdg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||dd    tt||d|ƒ| ¡|||dƒ}t||dd    tt|||dƒdS)
Nrr#rg:¨×BKc±?gÖ3®šk²?gî~qÉÁ“?r)r;r¥)rr rKr-r¨rrr )rrEr4r¬rKr¨r”rrrrL4s þzTestBroadcast.test_laplacecCsšdg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||dd    tt||d|ƒ| ¡|||dƒ}t||dd    tt|||dƒdS)
Nrr#rgÈ'£ZyÑ?g÷dSO=Ñ?gÏ3Lõ1³Õ?r)r;r¥)rr rFr-r¨rrr )rrEr4r¬rFr¨r”rrrrGGs þzTestBroadcast.test_gumbelcCsšdg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||dd    tt||d|ƒ| ¡|||dƒ}t||dd    tt|||dƒdS)
Nrr#rg“y±ÕÀ?gªÀJõRÁ?gþ
~Æ&‘£?r)r;r¥)rr rNr-r¨rrr )rrEr4r¬rNr¨r”rrrrOZs þzTestBroadcast.test_logisticcCsšdg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||dd    tt||d|ƒ| ¡|||dƒ}t||dd    tt|||dƒdS)
Nrr#rgÄñòÏH"@g¼ùÜ®ƒÍ @gvv    ý²:@r)r;r¥)rr rRr-r¨rrr )rrPrQZ    bad_sigmarRr¨r”rrrrSms þzTestBroadcast.test_lognormalcCsZdg}dg}tjj}t dddg¡}| ¡||dƒ}t||ddtt||dƒdS)    Nr#rgݱlËo½ó?gé/ӂ´Æó?gz~ßRó?r)r;r¥)rr rtr-r¨rrr )rr4r¬rtr¨r”rrrru€sþ zTestBroadcast.test_rayleighcCsàdg}dg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||d    d
tt||d|ƒtt||d|ƒ| ¡|||dƒ}t||d    d
tt|||dƒtt|||dƒtt|d dƒtt|dd ƒdS) Nr5r#rr%g@mò ‰e¾?g¸`ŸIß¿?g¸‡|2‹í?r)r;r¥rC)rr rr-r¨rrr )rrPr4Zbad_meanr¬rr¨r”rrrržs*þzTestBroadcast.test_waldc Csldg}dg}dg}dg}dg}|d\}}tjj}t dddg¡}    | ¡||d||ƒ}
t|
|    dd    tt||d||ƒtt||d||ƒtt||d||ƒ| ¡|||d|ƒ}
t|
|    dd    tt|||d|ƒtt|||d|ƒtt|||d|ƒ| ¡||||dƒ}
t|
|    dd    tt||||dƒtt||||dƒtt||||dƒdS)
Nr#r)r$r*g,âP;bD@gºÁ±È%G@g,~S²¨@r;r¥)rr r‚r-r¨rrr ) rrrr€Z bad_left_oneZ bad_mode_oneZ bad_left_twoZ bad_mode_twor‚r¨r”rrrrƒ¥sF þÿÿ
ÿzTestBroadcast.test_triangularc    Csædg}dg}dg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||ƒtt||d|ƒtt||d|ƒtt||d|ƒ| ¡|||dƒ}t||ƒtt|||dƒtt|||dƒtt|||dƒdS)Nr#r5rçø?r))rr r7r-r¨rrr )    rr]r8Úbad_nÚ    bad_p_oneÚ    bad_p_twoZbinomr¨r”rrrr$És&
 
zTestBroadcast.test_binomialc    Csædg}dg}dg}dg}dg}tjj}t dddg¡}| ¡||d|ƒ}t||ƒtt||d|ƒtt||d|ƒtt||d|ƒ| ¡|||dƒ}t||ƒtt|||dƒtt|||dƒtt|||dƒdS)Nr#r5rr¶rr))rr rhr-r¨rrr )    rr]r8r·r¸r¹Z    neg_binomr¨r”rrrriàs&
 
z$TestBroadcast.test_negative_binomialcCs|tj ¡j}dg}dg}|dg}tjj}t dddg¡}| ¡||dƒ}t||ƒtt    ||dƒtt    ||dƒdS)Nr#rr$rr))
rr rZ_poisson_lam_maxror-r¨rrr )rZmax_lamrnZ bad_lam_oneZ bad_lam_tworor¨r”rrrrp÷s 
 
zTestBroadcast.test_poissonc    Csdg}dg}tjj}t dddg¡}| ¡||dƒ}t||ƒtt||dƒtjdd(tt|tj    ƒtt|ddtj    gƒW5QRXdS)Nr$rr#r)rY)Úinvalid)
rr r¤r-r¨rrr Zerrstater:)rrÖr­r¤r¨r”rrrr¥s 
zTestBroadcast.test_zipfcCsldg}dg}dg}tjj}t dddg¡}| ¡||dƒ}t||ƒtt||dƒtt||dƒdS)Nr5rr¶r$r))rr rAr-r¨rrr )rr8r¸r¹Zgeomr¨r”rrrrBs 
zTestBroadcast.test_geometricc Csœdg}dg}dg}dg}dg}dg}dg}tjj}t dddg¡}    | ¡||d||ƒ}
t|
|    ƒtt||d||ƒtt||d||ƒtt||d||ƒtt||d||ƒ| ¡|||d|ƒ}
t|
|    ƒtt|||d|ƒtt|||d|ƒtt|||d|ƒtt|||d|ƒ| ¡||||dƒ}
t|
|    ƒtt||||dƒtt||||dƒtt||||dƒtt||||dƒdS)Nr#r$rr%rr*r))rr rIr-r¨rrr ) rZngoodZnbadZnsampleZ    bad_ngoodZbad_nbadZbad_nsample_oneZbad_nsample_twoZ    hypergeomr¨r”rrrrJ!s<
 
 
z!TestBroadcast.test_hypergeometriccCsldg}dg}dg}tjj}t dddg¡}| ¡||dƒ}t||ƒtt||dƒtt||dƒdS)Nr5r$rr#r))rr rUr-r¨rrr )rr8r¸r¹rUr¨r”rrrrVDs 
zTestBroadcast.test_logseriesN)#r0r1r2rXr¨rˆrgrr1rzr=r:rer³r'rar~r™rmr rsrLrGrOrSruržrƒr$rirpr¥rBrJrVrrrrr§s@  !      $ #r§zcan't start thread)Úreasonc@s4eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd S) Ú
TestThreadcCstdƒ|_dS)Nr*)rÚseedsr!rrrrXUszTestThread.setup_methodcsÌddlm‰t t|jƒf|¡}t t|jƒf|¡}‡‡fdd„t|j|ƒDƒ}dd„|Dƒdd„|Dƒt|j|ƒD]\}}ˆtj |¡|ƒq|t     ¡j
j dkr¾t j dkr¾t||ƒn
t||ƒdS)    Nr)ÚThreadcs(g|] \}}ˆˆtj |¡|fd‘qS))ÚtargetÚargs)rr r)rðrÚo©r¾Úfunctionrrrò_sÿz-TestThread.check_function.<locals>.<listcomp>cSsg|] }| ¡‘qSr)Ústart©rðrGrrrròascSsg|] }| ¡‘qSr)ÚjoinrÅrrrròbsr*Úwin32)Ú    threadingr¾rrÝr½r½Úzipr rZintpr(Úitemsizer‹Úplatformrr)rrÃÚszZout1Zout2rµrrÁrrÂrÚcheck_functionXs  
ÿ zTestThread.check_functioncCsdd„}|j|dddS)NcSs|jdd|d<dS)Né'r_.)rf©rWÚoutrrrÚ
gen_randomosz*TestThread.test_normal.<locals>.gen_random)rΩrÌ©rÍ©rrÑrrrrgnszTestThread.test_normalcCsdd„}|j|dddS)NcSs|jt d¡d|d<dS)N©r=r r3.)r0rZonesrÏrrrrÑtsz'TestThread.test_exp.<locals>.gen_randomrÕrÒrÓrÔrrrÚtest_expsszTestThread.test_expcCsdd„}|j|dddS)NcSs|jddgddd|d<dS)NrrWr,rÎr_.)rArÏrrrrÑysz/TestThread.test_multinomial.<locals>.gen_random)rÎr,rÒrÓrÔrrrrXxszTestThread.test_multinomialN)r0r1r2rXrÍrgrÖrXrrrrr¼Rs
r¼c@s4eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd S) ÚTestSingleEltArrayInputcCs4t dg¡|_t dg¡|_t dg¡|_d|_dS)Nr$r)r*)r#)rr-ÚargOneÚargTwoÚargThreeÚtgtShaper!rrrrX€sz$TestSingleEltArrayInput.setup_methodc Csœtjjtjjtjjtjjtjjtjjtjjtjj    tjj
tjj tjj tjj f }tjj tjj f}|D]6}||kr~|t dg¡ƒ}n
||jƒ}t|j|jƒq`dSrg)rr r0ryr&r}rkrŸrrrtror¤rArUr-rØrrMrÛ)rÚfuncsÚ    probfuncsr‹rÐrrrÚtest_one_arg_funcs†s$ û
z*TestSingleEltArrayInput.test_one_arg_funcscCsètjjtjjtjjtjjtjjtjjtjjtjj    tjj
tjj tjj tjj tjjtjjf}tjjtjjf}|D]v}||kr†t dg¡}n|j}||j|ƒ}t|j|jƒ||jd|ƒ}t|j|jƒ||j|dƒ}t|j|jƒqldS)Nr5r)rr r‡rfrr<r9r`r˜rKrFrNrRrr7rhr-rÙrØrrMrÛ)rrÜrÝr‹rÙrÐrrrÚtest_two_arg_funcs™s2 ú z*TestSingleEltArrayInput.test_two_arg_funcsc    Cs°ttjtjtjtjtjtjtjtj    g    }tj
j }t  dg¡}t  dg¡}|D]`}||||d}t |j|jƒ||d||d}t |j|jƒ|||d|d}t |j|jƒqJdS)Nr#rr')r‚rr…rˆrƒr†r„rLr.r‡r rr-rrMrÛ)rrnr‹r†r…rsrÐrrrr¹´s ÿ  z$TestSingleEltArrayInput.test_randintcCsŒtjjtjjtjjg}|D]l}||j|j|jƒ}t|j    |j
ƒ||jd|j|jƒ}t|j    |j
ƒ||j|jd|jƒ}t|j    |j
ƒqdS)Nr) rr rdr‚rIrØrÙrÚrrMrÛ)rrÜr‹rÐrrrÚtest_three_arg_funcsÅs ÿz,TestSingleEltArrayInput.test_three_arg_funcsN)r0r1r2rXrÞrßr¹ràrrrrr×s
r×)rÅrÚnumpyrZ numpy.testingrrrrrrrr    r
r r‹r r3r<rRrjrœr§r¦Zskipifr¼r×rrrrÚ<module>s2, '"0 |>,