Started adding unit tests.

iteration: Single threaded full iterators populate and drop correctly for trivial and non-trivial types.

Fortune for parapop's current commit: Half blessing − 半吉
master
Avril 3 years ago
parent 4b85a45a27
commit 9272f1addb
Signed by: flanchan
GPG Key ID: 284488987C31F630

@ -1,9 +1,33 @@
//! Unit tests //! Unit tests
use super::*; use super::*;
#[test] /// Testing iteration
fn single_threaded() mod iteration {
{ use super::*;
let pop = Populator::new(10); #[test]
//for r in pop.iter fn single_threaded_trivial()
{
let pop = Populator::new(10);
for r in pop.iter()
{
r.insert(1usize);
}
assert_eq!(10usize, pop.complete().into_iter().sum::<usize>(), "Did not set all elements to 1");
}
#[test]
fn single_threaded_nontrivial()
{
let pop = Populator::new(10);
for r in pop.iter()
{
r.insert(String::from("1"));
}
assert_eq!(10usize, pop.complete().into_iter()
.map(|x| x.parse::<usize>().unwrap())
.sum::<usize>(), "Did not set all elements to 1");
}
} }

Loading…
Cancel
Save