use crate::{
analyzer::AnalyzerFieldState, schema::BitOrder,
utils::analyze_utils::create_bit_writer_with_owned_data,
};
use ahash::{AHashMap, HashMapExt};
use rustc_hash::FxHashMap;
pub(crate) const TEST_FIELD_NAME: &str = "test_field";
pub(crate) fn create_mock_field_states(
field_name: &str,
data: &[u8],
len_bits: u32,
data_bit_order: BitOrder,
field_bit_order: BitOrder,
) -> AHashMap<String, AnalyzerFieldState> {
let mut map = AHashMap::new();
let writer = create_bit_writer_with_owned_data(data, data_bit_order);
let name = field_name.to_string();
map.insert(
name.clone(),
AnalyzerFieldState {
name: name.clone(),
full_path: name.clone(),
bit_counts: Vec::new(),
bit_order: field_bit_order,
count: 0,
depth: 0,
value_counts: FxHashMap::new(),
writer,
lenbits: len_bits,
},
);
map
}