From 3d90436db494a36344d6a2eec8a02cece056384d Mon Sep 17 00:00:00 2001 From: "Jorge C. Leitao" Date: Tue, 17 Aug 2021 23:34:19 +0000 Subject: [PATCH] Reduced size of test. --- tests/it/bitmap/utils/slice_iterator.rs | 30 +++++++++++++++++ tests/it/filter.rs | 43 ------------------------- tests/it/main.rs | 2 -- 3 files changed, 30 insertions(+), 45 deletions(-) delete mode 100644 tests/it/filter.rs diff --git a/tests/it/bitmap/utils/slice_iterator.rs b/tests/it/bitmap/utils/slice_iterator.rs index 43ffcc7db0a..ea60940c41f 100644 --- a/tests/it/bitmap/utils/slice_iterator.rs +++ b/tests/it/bitmap/utils/slice_iterator.rs @@ -1,3 +1,8 @@ +use rand::distributions::{Bernoulli, Uniform}; +use rand::prelude::StdRng; +use rand::Rng; +use rand::SeedableRng; + use arrow2::bitmap::utils::SlicesIterator; use arrow2::bitmap::Bitmap; @@ -137,3 +142,28 @@ fn remainder_1() { let chunks = iter.collect::>(); assert_eq!(chunks, vec![(2, 1), (4, 1)]); } + +#[test] +fn filter_slices() { + let mut rng = StdRng::seed_from_u64(42); + let length = 500; + + let mask: Bitmap = (0..length) + .map(|_| { + let v: bool = (&mut rng).sample(Bernoulli::new(0.5).unwrap()); + v + }) + .collect(); + + for offset in 100usize..(length - 1) { + let len = (&mut rng).sample(Uniform::new(0, length - offset)); + let mask_s = mask.clone().slice(offset, len); + + let iter = SlicesIterator::new(&mask_s); + iter.for_each(|(start, slice_len)| { + if start + slice_len > len { + panic!("Fail") + } + }); + } +} diff --git a/tests/it/filter.rs b/tests/it/filter.rs deleted file mode 100644 index 69fb36524ae..00000000000 --- a/tests/it/filter.rs +++ /dev/null @@ -1,43 +0,0 @@ -use arrow2::array::{Array, BooleanArray, Utf8Array}; -use arrow2::bitmap::utils::SlicesIterator; -use rand::distributions::{Alphanumeric, Bernoulli, Uniform}; -use rand::prelude::StdRng; -use rand::Rng; -use rand::SeedableRng; -use std::iter::FromIterator; - -#[test] -fn filter_slices() { - let mut rng = StdRng::seed_from_u64(42); - let length = 50000; - - let values_iter = (0..length).map(|_| { - let len = (&mut rng).sample(Uniform::new(0usize, 8)); - let s: String = (&mut rng) - .sample_iter(&Alphanumeric) - .take(len) - .map(char::from) - .collect(); - s - }); - - let arr = Utf8Array::::from_iter_values(values_iter); - let values_iter = (0..length).map(|_| { - let v: bool = (&mut rng).sample(Bernoulli::new(0.5).unwrap()); - Some(v) - }); - let mask = BooleanArray::from_iter(values_iter); - - for offset in 100usize..(length - 1) { - let len = (&mut rng).sample(Uniform::new(0, length - offset)); - let arr_s = arr.slice(offset, len); - let mask_s = mask.slice(offset, len); - - let iter = SlicesIterator::new(mask_s.values()); - iter.for_each(|(start, len)| { - if start + len > arr_s.len() { - panic!("Fail") - } - }); - } -} diff --git a/tests/it/main.rs b/tests/it/main.rs index 0c4c4e65f41..9cd03e6b78a 100644 --- a/tests/it/main.rs +++ b/tests/it/main.rs @@ -6,5 +6,3 @@ mod ffi; mod io; mod test_util; - -mod filter;