@@ -88,17 +88,32 @@ pub use error::SSKRError;
88
88
#[ cfg( test) ]
89
89
mod tests {
90
90
use super :: * ;
91
- use bc_rand:: RandomNumberGenerator ;
91
+ use bc_rand:: { rng_next_in_closed_range , RandomNumberGenerator } ;
92
92
use hex_literal:: hex;
93
+ use rand:: RngCore ;
93
94
94
95
#[ derive( Debug ) ]
95
96
struct FakeRandomNumberGenerator ;
96
97
97
- impl RandomNumberGenerator for FakeRandomNumberGenerator {
98
+ impl RngCore for FakeRandomNumberGenerator {
98
99
fn next_u64 ( & mut self ) -> u64 {
99
100
unimplemented ! ( )
100
101
}
101
102
103
+ fn next_u32 ( & mut self ) -> u32 {
104
+ unimplemented ! ( )
105
+ }
106
+
107
+ fn fill_bytes ( & mut self , _dest : & mut [ u8 ] ) {
108
+ unimplemented ! ( )
109
+ }
110
+
111
+ fn try_fill_bytes ( & mut self , _dest : & mut [ u8 ] ) -> Result < ( ) , rand:: Error > {
112
+ unimplemented ! ( )
113
+ }
114
+ }
115
+
116
+ impl RandomNumberGenerator for FakeRandomNumberGenerator {
102
117
fn random_data ( & mut self , size : usize ) -> Vec < u8 > {
103
118
let mut b = vec ! [ 0u8 ; size] ;
104
119
self . fill_random_data ( & mut b) ;
@@ -199,7 +214,7 @@ mod tests {
199
214
let mut i = slice. len ( ) ;
200
215
while i > 1 {
201
216
i -= 1 ;
202
- let j = rng . next_in_closed_range ( & ( 0 ..=i) ) ;
217
+ let j = rng_next_in_closed_range ( rng , & ( 0 ..=i) ) ;
203
218
slice. swap ( i, j) ;
204
219
}
205
220
}
@@ -298,17 +313,17 @@ mod tests {
298
313
}
299
314
300
315
fn one_fuzz_test ( rng : & mut impl RandomNumberGenerator ) {
301
- let secret_len = rng . next_in_closed_range ( & ( MIN_SECRET_LEN ..=MAX_SECRET_LEN ) ) & !1 ;
316
+ let secret_len = rng_next_in_closed_range ( rng , & ( MIN_SECRET_LEN ..=MAX_SECRET_LEN ) ) & !1 ;
302
317
let secret = Secret :: new ( rng. random_data ( secret_len) ) . unwrap ( ) ;
303
- let group_count = rng . next_in_closed_range ( & ( 1 ..=MAX_GROUPS_COUNT ) ) ;
318
+ let group_count = rng_next_in_closed_range ( rng , & ( 1 ..=MAX_GROUPS_COUNT ) ) ;
304
319
let group_specs = ( 0 ..group_count)
305
320
. map ( |_| {
306
- let member_count = rng . next_in_closed_range ( & ( 1 ..=MAX_SHARE_COUNT ) ) ;
307
- let member_threshold = rng . next_in_closed_range ( & ( 1 ..=member_count) ) ;
321
+ let member_count = rng_next_in_closed_range ( rng , & ( 1 ..=MAX_SHARE_COUNT ) ) ;
322
+ let member_threshold = rng_next_in_closed_range ( rng , & ( 1 ..=member_count) ) ;
308
323
GroupSpec :: new ( member_threshold, member_count) . unwrap ( )
309
324
} )
310
325
. collect :: < Vec < _ > > ( ) ;
311
- let group_threshold = rng . next_in_closed_range ( & ( 1 ..=group_count) ) ;
326
+ let group_threshold = rng_next_in_closed_range ( rng , & ( 1 ..=group_count) ) ;
312
327
let spec = Spec :: new ( group_threshold, group_specs) . unwrap ( ) ;
313
328
let shares = sskr_generate_using ( & spec, & secret, rng) . unwrap ( ) ;
314
329
0 commit comments