pub fn random_vector<T: Random>(items_count: u32) -> Vec<T>
Expand description

Generates a vector of items that implement the Random trait.

Examples

use cs_utils::test::random_vector;
use cs_utils::traits::Random;
use cs_utils::{random_number, random_str};
 
#[derive(Debug)]
struct SomeStruct {
    id: u16,
    name: String,
}
 
impl Random for SomeStruct {
    fn random() -> Self {
        return SomeStruct {
            id: random_number(0..=u16::MAX),
            name: random_str(10),
        };
    }
}
 
let items_count = random_number(3..=5);
let result: Vec<SomeStruct> = random_vector(items_count);
 
assert_eq!(
    result.len() as u32,
    items_count,
    "Must create {} items.", &items_count,
);
println!("{:?}", &result);