From 39a35b693a628829de103f1a51af10facc34e363 Mon Sep 17 00:00:00 2001 From: Wainer dos Santos Moschetta Date: Thu, 8 Apr 2021 14:34:35 -0400 Subject: [PATCH] agent: Add test to random::reseed_rng() Introduced an unit test for the random::reseed_rng() function. Fixes #291 Signed-off-by: Wainer dos Santos Moschetta --- src/agent/src/random.rs | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/agent/src/random.rs b/src/agent/src/random.rs index ec64e89c93..4e7005a357 100644 --- a/src/agent/src/random.rs +++ b/src/agent/src/random.rs @@ -46,3 +46,24 @@ pub fn reseed_rng(data: &[u8]) -> Result<()> { Ok(()) } + +#[cfg(test)] +mod tests { + use super::*; + use crate::skip_if_not_root; + use std::fs::File; + use std::io::prelude::*; + + #[test] + fn test_reseed_rng() { + skip_if_not_root!(); + const POOL_SIZE: usize = 512; + let mut f = File::open("/dev/urandom").unwrap(); + let mut seed = [0; POOL_SIZE]; + let n = f.read(&mut seed).unwrap(); + // Ensure the buffer was filled. + assert!(n == POOL_SIZE); + let ret = reseed_rng(&seed); + assert!(ret.is_ok()); + } +}