@@ -563,8 +563,8 @@ pub mod test_harness {
563563mod test {
564564 use rand:: SeedableRng as _;
565565 use rand:: rngs:: StdRng ;
566- use vortex_array:: ToCanonical as _;
567566 use vortex_array:: arrays:: ChunkedArray ;
567+ use vortex_array:: { ToCanonical as _, assert_arrays_eq} ;
568568 use vortex_buffer:: { Buffer , buffer} ;
569569 use vortex_dtype:: Nullability ;
570570 use vortex_error:: VortexError ;
@@ -578,26 +578,23 @@ mod test {
578578 let zeros = buffer ! [ 0u16 , 0 , 0 , 0 ] . into_array ( ) . to_primitive ( ) ;
579579 let bitpacked = bitpack_encode ( & zeros, 0 , None ) . unwrap ( ) ;
580580 let actual = unpack ( & bitpacked) ;
581- let actual = actual. as_slice :: < u16 > ( ) ;
582- assert_eq ! ( actual, & [ 0u16 , 0 , 0 , 0 ] ) ;
581+ assert_arrays_eq ! ( actual, PrimitiveArray :: from_iter( [ 0u16 , 0 , 0 , 0 ] ) ) ;
583582 }
584583
585584 #[ test]
586585 fn test_simple_patches ( ) {
587586 let zeros = buffer ! [ 0u16 , 1 , 0 , 1 ] . into_array ( ) . to_primitive ( ) ;
588587 let bitpacked = bitpack_encode ( & zeros, 0 , None ) . unwrap ( ) ;
589588 let actual = unpack ( & bitpacked) ;
590- let actual = actual. as_slice :: < u16 > ( ) ;
591- assert_eq ! ( actual, & [ 0u16 , 1 , 0 , 1 ] ) ;
589+ assert_arrays_eq ! ( actual, PrimitiveArray :: from_iter( [ 0u16 , 1 , 0 , 1 ] ) ) ;
592590 }
593591
594592 #[ test]
595593 fn test_one_full_chunk ( ) {
596594 let zeros = BufferMut :: from_iter ( 0u16 ..1024 ) . into_array ( ) . to_primitive ( ) ;
597595 let bitpacked = bitpack_encode ( & zeros, 10 , None ) . unwrap ( ) ;
598596 let actual = unpack ( & bitpacked) ;
599- let actual = actual. as_slice :: < u16 > ( ) ;
600- assert_eq ! ( actual, & ( 0u16 ..1024 ) . collect:: <Vec <_>>( ) ) ;
597+ assert_arrays_eq ! ( actual, PrimitiveArray :: from_iter( 0u16 ..1024 ) ) ;
601598 }
602599
603600 #[ test]
@@ -608,13 +605,9 @@ mod test {
608605 let bitpacked = bitpack_encode ( & zeros, 10 , None ) . unwrap ( ) ;
609606 assert ! ( bitpacked. patches( ) . is_some( ) ) ;
610607 let actual = unpack ( & bitpacked) ;
611- let actual = actual. as_slice :: < u16 > ( ) ;
612- assert_eq ! (
608+ assert_arrays_eq ! (
613609 actual,
614- & ( 5u16 ..1029 )
615- . chain( 5u16 ..1029 )
616- . chain( 5u16 ..1029 )
617- . collect:: <Vec <_>>( )
610+ PrimitiveArray :: from_iter( ( 5u16 ..1029 ) . chain( 5u16 ..1029 ) . chain( 5u16 ..1029 ) )
618611 ) ;
619612 }
620613
@@ -624,8 +617,7 @@ mod test {
624617 let bitpacked = bitpack_encode ( & zeros, 11 , None ) . unwrap ( ) ;
625618 assert ! ( bitpacked. patches( ) . is_none( ) ) ;
626619 let actual = unpack ( & bitpacked) ;
627- let actual = actual. as_slice :: < u16 > ( ) ;
628- assert_eq ! ( actual, & ( 0u16 ..1025 ) . collect:: <Vec <_>>( ) ) ;
620+ assert_arrays_eq ! ( actual, PrimitiveArray :: from_iter( 0u16 ..1025 ) ) ;
629621 }
630622
631623 #[ test]
@@ -637,8 +629,7 @@ mod test {
637629 assert_eq ! ( bitpacked. len( ) , 1025 ) ;
638630 assert ! ( bitpacked. patches( ) . is_some( ) ) ;
639631 let actual = unpack ( & bitpacked) ;
640- let actual = actual. as_slice :: < u16 > ( ) ;
641- assert_eq ! ( actual, & ( 512u16 ..1537 ) . collect:: <Vec <_>>( ) ) ;
632+ assert_arrays_eq ! ( actual, PrimitiveArray :: from_iter( 512u16 ..1537 ) ) ;
642633 }
643634
644635 #[ test]
@@ -651,8 +642,7 @@ mod test {
651642 assert ! ( bitpacked. patches( ) . is_some( ) ) ;
652643 let bitpacked = bitpacked. slice ( 1023 ..1025 ) ;
653644 let actual = unpack ( bitpacked. as_ :: < BitPackedVTable > ( ) ) ;
654- let actual = actual. as_slice :: < u16 > ( ) ;
655- assert_eq ! ( actual, & [ 1535 , 1536 ] ) ;
645+ assert_arrays_eq ! ( actual, PrimitiveArray :: from_iter( [ 1535u16 , 1536 ] ) ) ;
656646 }
657647
658648 #[ test]
@@ -665,8 +655,10 @@ mod test {
665655 assert ! ( bitpacked. patches( ) . is_some( ) ) ;
666656 let bitpacked = bitpacked. slice ( 1023 ..2049 ) ;
667657 let actual = unpack ( bitpacked. as_ :: < BitPackedVTable > ( ) ) ;
668- let actual = actual. as_slice :: < u16 > ( ) ;
669- assert_eq ! ( actual, & ( 1023 ..2049 ) . map( |x| x + 512 ) . collect:: <Vec <_>>( ) ) ;
658+ assert_arrays_eq ! (
659+ actual,
660+ PrimitiveArray :: from_iter( ( 1023u16 ..2049 ) . map( |x| x + 512 ) )
661+ ) ;
670662 }
671663
672664 #[ test]
@@ -717,7 +709,7 @@ mod test {
717709 let values = PrimitiveArray :: from_iter ( ( 0 ..n) . map ( |i| ( i % 2047 ) as u16 ) ) ;
718710 let compressed = BitPackedArray :: encode ( values. as_ref ( ) , 11 ) . unwrap ( ) ;
719711 let decompressed = compressed. to_primitive ( ) ;
720- assert_eq ! ( decompressed. as_slice :: < u16 > ( ) , values. as_slice :: < u16 > ( ) ) ;
712+ assert_arrays_eq ! ( decompressed, values) ;
721713
722714 values
723715 . as_slice :: < u16 > ( )
@@ -754,20 +746,14 @@ mod test {
754746 chunked. clone ( ) . append_to_builder ( & mut primitive_builder) ;
755747 let ca_into = primitive_builder. finish ( ) ;
756748
757- assert_eq ! (
758- into_ca. as_slice:: <i32 >( ) ,
759- ca_into. to_primitive( ) . as_slice:: <i32 >( )
760- ) ;
749+ assert_arrays_eq ! ( into_ca, ca_into. to_primitive( ) ) ;
761750
762751 let mut primitive_builder =
763752 PrimitiveBuilder :: < i32 > :: with_capacity ( chunked. dtype ( ) . nullability ( ) , 10 * 100 ) ;
764753 primitive_builder. extend_from_array ( & chunked) ;
765754 let ca_into = primitive_builder. finish ( ) ;
766755
767- assert_eq ! (
768- into_ca. as_slice:: <i32 >( ) ,
769- ca_into. to_primitive( ) . as_slice:: <i32 >( )
770- ) ;
756+ assert_arrays_eq ! ( into_ca, ca_into. to_primitive( ) ) ;
771757 }
772758
773759 #[ test]
@@ -835,7 +821,7 @@ mod test {
835821 let result = builder. finish_into_primitive ( ) ;
836822
837823 // Verify all values were correctly unpacked including patches.
838- assert_eq ! ( result. as_slice :: < u32 > ( ) , & values) ;
824+ assert_arrays_eq ! ( result, PrimitiveArray :: from_iter ( values) ) ;
839825 }
840826
841827 #[ test]
@@ -858,7 +844,7 @@ mod test {
858844 // chunk 1 (1024-2047): no patches -> points to patch index 2
859845 // chunk 2 (2048-3071): patch at 3000 -> starts at patch index 2
860846 // chunk 3 (3072-4095): patch at 3100 -> starts at patch index 3
861- assert_eq ! ( chunk_offsets. as_slice :: < u64 > ( ) , & [ 0 , 2 , 2 , 3 ] ) ;
847+ assert_arrays_eq ! ( chunk_offsets, PrimitiveArray :: from_iter ( [ 0u64 , 2 , 2 , 3 ] ) ) ;
862848 }
863849
864850 #[ test]
@@ -877,7 +863,7 @@ mod test {
877863 let patches = bitpacked. patches ( ) . unwrap ( ) ;
878864 let chunk_offsets = patches. chunk_offsets ( ) . as_ref ( ) . unwrap ( ) . to_primitive ( ) ;
879865
880- assert_eq ! ( chunk_offsets. as_slice :: < u64 > ( ) , & [ 0 , 2 , 2 ] ) ;
866+ assert_arrays_eq ! ( chunk_offsets, PrimitiveArray :: from_iter ( [ 0u64 , 2 , 2 ] ) ) ;
881867 }
882868
883869 #[ test]
@@ -901,7 +887,7 @@ mod test {
901887 // chunk 2 (2048-3071): no patches -> points to patch index 3
902888 // chunk 3 (3072-4095): no patches -> points to patch index 3 (remaining chunks filled)
903889 // chunk 4 (4096-5119): no patches -> points to patch index 3 (remaining chunks filled)
904- assert_eq ! ( chunk_offsets. as_slice :: < u64 > ( ) , & [ 0 , 2 , 3 , 3 , 3 ] ) ;
890+ assert_arrays_eq ! ( chunk_offsets, PrimitiveArray :: from_iter ( [ 0u64 , 2 , 3 , 3 , 3 ] ) ) ;
905891 }
906892
907893 #[ test]
@@ -921,6 +907,6 @@ mod test {
921907 let chunk_offsets = patches. chunk_offsets ( ) . as_ref ( ) . unwrap ( ) . to_primitive ( ) ;
922908
923909 // Single chunk starting at patch index 0.
924- assert_eq ! ( chunk_offsets. as_slice :: < u64 > ( ) , & [ 0 ] ) ;
910+ assert_arrays_eq ! ( chunk_offsets, PrimitiveArray :: from_iter ( [ 0u64 ] ) ) ;
925911 }
926912}
0 commit comments