@@ -213,3 +213,79 @@ pub fn solve_cors_wrapper(
213
213
cept,
214
214
} )
215
215
}
216
+
217
+ #[ cfg( test) ]
218
+ mod tests {
219
+ use super :: * ;
220
+
221
+ #[ test]
222
+ fn test_solve_sums_wrapper ( ) {
223
+ let tagging = vec ! [ 1.0 , 2.0 , 3.0 ] ;
224
+ let chisqs = vec ! [ 1.0 , 2.0 , 3.0 ] ;
225
+ let sample_sizes = vec ! [ 1.0 , 2.0 , 3.0 ] ;
226
+ let category_vals = vec ! [ vec![ 1.0 , 2.0 , 3.0 ] , vec![ 4.0 , 5.0 , 6.0 ] ] ;
227
+ let category_contribs = vec ! [ vec![ 1.0 , 2.0 , 3.0 ] , vec![ 4.0 , 5.0 , 6.0 ] ] ;
228
+
229
+ let result = solve_sums_wrapper (
230
+ & tagging,
231
+ & chisqs,
232
+ & sample_sizes,
233
+ & category_vals,
234
+ & category_contribs,
235
+ None ,
236
+ )
237
+ . unwrap ( ) ;
238
+
239
+ // Check sizes
240
+ assert_eq ! ( result. stats. len( ) , 3 * ( 2 + 1 + 2 ) ) ;
241
+ assert_eq ! ( result. likes. len( ) , 11 ) ;
242
+ assert_eq ! ( result. cohers. len( ) , 2 * 2 ) ;
243
+ assert_eq ! ( result. influs. len( ) , 2 ) ;
244
+
245
+ // Check values
246
+ let desired_stats = [
247
+ 0.4791464197764975 ,
248
+ -0.5588545017977516 ,
249
+ -0.07970808202125412 ,
250
+ 0.2556046190573969 ,
251
+ 1.3577311773082386 ,
252
+ 2.3675053949121336 ,
253
+ 4.497316861083112 ,
254
+ 2.2773633495918704 ,
255
+ 0.763803940571641 ,
256
+ 5.227708866852336 ,
257
+ 146.47111303693012 ,
258
+ 146.47111303693012 ,
259
+ 0.0 ,
260
+ 87.88266782215808 ,
261
+ 439.41333911079033 ,
262
+ ] ;
263
+ assert_eq ! ( result. stats, desired_stats) ;
264
+
265
+ let desired_likes = [
266
+ -3.5411094874599045 ,
267
+ -3.3166019866559435 ,
268
+ -2.601387310875233 ,
269
+ 0.6760515111840476 ,
270
+ -0.8075528916021616 ,
271
+ 1.0601008469882118 ,
272
+ 1.0 ,
273
+ 0.0 ,
274
+ 0.0 ,
275
+ 0.0 ,
276
+ 0.0 ,
277
+ ] ;
278
+ assert_eq ! ( result. likes, desired_likes) ;
279
+
280
+ let desired_cohers = [
281
+ 5.605081794938058 ,
282
+ -10.322278458928105 ,
283
+ -10.322278458928107 ,
284
+ 20.22585894898246 ,
285
+ ] ;
286
+ assert_eq ! ( result. cohers, desired_cohers) ;
287
+
288
+ let desired_influs = [ 4.363636363636364 , 1.8545454545454547 ] ;
289
+ assert_eq ! ( result. influs, desired_influs) ;
290
+ }
291
+ }
0 commit comments