MCPcopy Create free account
hub / github.com/apache/arrow-rs / setup_and_assert

Function setup_and_assert

arrow-buffer/src/util/bit_iterator.rs:606–621  ·  view source on GitHub ↗
(
        setup_iters: impl Fn(&mut dyn SharedBetweenBitIteratorAndSliceIter),
        assert_fn: impl Fn(BitIterator, Copied<Iter<bool>>),
    )

Source from the content-addressed store, hash-verified

604 }
605
606 fn setup_and_assert(
607 setup_iters: impl Fn(&mut dyn SharedBetweenBitIteratorAndSliceIter),
608 assert_fn: impl Fn(BitIterator, Copied<Iter<bool>>),
609 ) {
610 for (boolean_buffer, source) in get_bit_iterator_cases() {
611 // Not using `boolean_buffer.iter()` in case the implementation change to not call BitIterator internally
612 // in which case the test would not test what it intends to test
613 let mut actual = BitIterator::new(boolean_buffer.values(), 0, boolean_buffer.len());
614 let mut expected = source.iter().copied();
615
616 setup_iters(&mut actual);
617 setup_iters(&mut expected);
618
619 assert_fn(actual, expected);
620 }
621 }
622
623 /// Trait representing an operation on a BitIterator
624 /// that can be compared against a slice iterator

Calls 4

get_bit_iterator_casesFunction · 0.85
valuesMethod · 0.45
lenMethod · 0.45
iterMethod · 0.45