move prime tests to prime modules

This commit is contained in:
timeshifter
2022-08-14 18:09:44 +02:00
parent e8768dd606
commit e76f39d32b
2 changed files with 19 additions and 11 deletions
-6
View File
@@ -76,10 +76,4 @@ mod test {
let num = 83371; let num = 83371;
assert_eq!(num_to_digits(&num), vec![8, 3, 3, 7, 1]); assert_eq!(num_to_digits(&num), vec![8, 3, 3, 7, 1]);
} }
#[test]
fn test_example_prime() {
let num: Int = 56003;
assert!(Primes::get_between(MIN_VALUE, MAX_VALUE).set.contains(&num));
}
} }
+19 -5
View File
@@ -17,12 +17,14 @@ where
T: Num + ToPrimitive + FromPrimitive + Hash + Eq + PartialEq + Copy, T: Num + ToPrimitive + FromPrimitive + Hash + Eq + PartialEq + Copy,
{ {
pub fn get_between(min_value: T, max_value: T) -> Self { pub fn get_between(min_value: T, max_value: T) -> Self {
let max_value_usize = max_value.to_usize().unwrap(); let max_value = max_value.to_usize().unwrap();
let min_value_usize = min_value.to_usize().unwrap(); let min_value = min_value.to_usize().unwrap();
assert!(min_value > 1);
assert!(max_value > min_value);
Self::from_array( Self::from_array(
Self::get_prime_numbers_array(&min_value_usize, &max_value_usize), Self::get_prime_numbers_array(&min_value, &max_value),
&min_value_usize, &min_value,
&max_value_usize, &max_value,
) )
} }
@@ -69,3 +71,15 @@ where
}; };
} }
} }
#[cfg(test)]
mod test {
use crate::primes::Primes;
#[test]
fn test_example_prime() {
let primes = Primes::get_between(2, 99_999);
assert!(primes.set.contains(&56003));
assert!(!primes.set.contains(&56002));
}
}