use itertools::Itertools; use noir_compute::operator::source::IteratorSource; use utils::TestHelper; mod utils; #[test] fn filter_stream() { TestHelper::local_remote_env(|env| { let source = IteratorSource::new(0..10u8); let res = env.stream(source).filter(|x| x % 2 == 1).collect_vec(); env.execute_blocking(); if let Some(res) = res.get() { assert_eq!(res, &[1, 3, 5, 7, 9]); } }); } #[test] fn filter_keyed_stream() { TestHelper::local_remote_env(|env| { let source = IteratorSource::new(0..10u8); let res = env .stream(source) .group_by(|n| n % 2) .filter(|(_key, x)| *x < 6) .drop_key() .collect_vec(); env.execute_blocking(); if let Some(mut res) = res.get() { res.sort_unstable(); assert_eq!(res, (0..6u8).collect_vec()); } }); }