Skip to content

Commit eca2565

Browse files
committed
Fix benchmarks and no_std
1 parent 7c4d8a2 commit eca2565

File tree

4 files changed

+15
-23
lines changed

4 files changed

+15
-23
lines changed

benches/bench.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ mod distributions;
99

1010
use std::mem::size_of;
1111
use test::{black_box, Bencher};
12-
use rand::{StdRng, Rng};
12+
use rand::{StdRng, Rng, NewSeeded};
1313

1414
#[bench]
1515
fn rand_f32(b: &mut Bencher) {

benches/generators.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ const BYTES_LEN: usize = 1024;
99
use std::mem::size_of;
1010
use test::{black_box, Bencher};
1111

12-
use rand::{Rng, StdRng, OsRng, JitterRng};
12+
use rand::{Rng, NewSeeded, StdRng, OsRng, JitterRng};
1313
use rand::{XorShiftRng, Hc128Rng, IsaacRng, Isaac64Rng, ChaChaRng};
1414

1515
macro_rules! gen_bytes {

src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ use prng::Isaac64Rng as IsaacWordRng;
276276

277277
use distributions::{Range, IndependentSample};
278278
use distributions::range::SampleRange;
279-
use reseeding::{ReseedingRng, ReseedWithNew};
279+
#[cfg(feature="std")]use reseeding::{ReseedingRng, ReseedWithNew};
280280

281281
// public modules
282282
pub mod distributions;

src/reseeding.rs

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -108,9 +108,8 @@ impl<R: Rng + NewSeeded> Reseeder<R> for ReseedWithNew {
108108
#[cfg(test)]
109109
mod test {
110110
use {impls, le};
111-
use core::default::Default;
112-
use super::{ReseedingRng, ReseedWithNew};
113-
use {SeedableRng, Rng};
111+
use super::{ReseedingRng, Reseeder};
112+
use {SeedableRng, Rng, Error};
114113

115114
struct Counter {
116115
i: u32
@@ -130,11 +129,6 @@ mod test {
130129
impls::fill_bytes_via_u64(self, dest)
131130
}
132131
}
133-
impl Default for Counter {
134-
fn default() -> Counter {
135-
Counter { i: 0 }
136-
}
137-
}
138132
impl SeedableRng for Counter {
139133
type Seed = [u8; 4];
140134
fn from_seed(seed: Self::Seed) -> Self {
@@ -144,25 +138,23 @@ mod test {
144138
}
145139
}
146140

141+
#[derive(Debug, Clone)]
142+
struct ReseedCounter;
143+
impl Reseeder<Counter> for ReseedCounter {
144+
fn reseed(&mut self, rng: &mut Counter) -> Result<(), Error> {
145+
*rng = Counter { i: 0 };
146+
Ok(())
147+
}
148+
}
149+
147150
#[test]
148151
fn test_reseeding() {
149-
let mut rs = ReseedingRng::new(Counter {i:0}, 400, ReseedWithNew);
152+
let mut rs = ReseedingRng::new(Counter {i:0}, 400, ReseedCounter);
150153

151154
let mut i = 0;
152155
for _ in 0..1000 {
153156
assert_eq!(rs.next_u32(), i % 100);
154157
i += 1;
155158
}
156159
}
157-
158-
const FILL_BYTES_V_LEN: usize = 13579;
159-
#[test]
160-
fn test_rng_fill_bytes() {
161-
let mut v = [0u8; FILL_BYTES_V_LEN];
162-
::test::rng(321).fill_bytes(&mut v);
163-
164-
// To test that `fill_bytes` actually did something, check that not all
165-
// bytes are zero.
166-
assert!(!v.iter().all(|&x| x == 0));
167-
}
168160
}

0 commit comments

Comments
 (0)