@@ -758,7 +758,7 @@ mod tests {
758758 use vortex_array:: arrays:: PrimitiveArray ;
759759 use vortex_array:: validity:: Validity ;
760760 use vortex_array:: vtable:: ValidityHelper ;
761- use vortex_array:: { Array , IntoArray , ToCanonical } ;
761+ use vortex_array:: { Array , IntoArray , ToCanonical , assert_arrays_eq } ;
762762 use vortex_buffer:: { Buffer , BufferMut , buffer, buffer_mut} ;
763763 use vortex_dict:: DictEncoding ;
764764 use vortex_sequence:: SequenceEncoding ;
@@ -845,10 +845,11 @@ mod tests {
845845 . compress ( & IntegerStats :: generate ( & array) , false , 3 , & [ ] )
846846 . unwrap ( ) ;
847847 assert_eq ! ( compressed. encoding_id( ) , SparseEncoding . id( ) ) ;
848- let decoded = compressed. to_primitive ( ) ;
849- let expected = [ 189u8 , 189 , 189 , 0 , 0 ] ;
850- assert_eq ! ( decoded. as_slice:: <u8 >( ) , & expected) ;
851- assert_eq ! ( decoded. validity( ) , array. validity( ) ) ;
848+ let decoded = compressed. clone ( ) ;
849+ let expected =
850+ PrimitiveArray :: new ( buffer ! [ 189u8 , 189 , 189 , 0 , 0 ] , array. validity ( ) . clone ( ) )
851+ . into_array ( ) ;
852+ assert_arrays_eq ! ( decoded. as_ref( ) , expected. as_ref( ) ) ;
852853 }
853854
854855 #[ test]
@@ -863,10 +864,13 @@ mod tests {
863864 . compress ( & IntegerStats :: generate ( & array) , false , 3 , & [ ] )
864865 . unwrap ( ) ;
865866 assert_eq ! ( compressed. encoding_id( ) , SparseEncoding . id( ) ) ;
866- let decoded = compressed. to_primitive ( ) ;
867- let expected = [ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 46 ] ;
868- assert_eq ! ( decoded. as_slice:: <u8 >( ) , & expected) ;
869- assert_eq ! ( decoded. validity( ) , array. validity( ) ) ;
867+ let decoded = compressed. clone ( ) ;
868+ let expected = PrimitiveArray :: new (
869+ buffer ! [ 0u8 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 46 ] ,
870+ array. validity ( ) . clone ( ) ,
871+ )
872+ . into_array ( ) ;
873+ assert_arrays_eq ! ( decoded. as_ref( ) , expected. as_ref( ) ) ;
870874 }
871875
872876 #[ test]
@@ -877,8 +881,9 @@ mod tests {
877881 . compress ( & IntegerStats :: generate ( & array) , false , 3 , & [ ] )
878882 . unwrap ( ) ;
879883 assert_eq ! ( compressed. encoding_id( ) , SequenceEncoding . id( ) ) ;
880- let decoded = compressed. to_primitive ( ) ;
881- assert_eq ! ( decoded. as_slice:: <i32 >( ) , values. as_slice( ) ) ;
884+ let decoded = compressed;
885+ let expected = PrimitiveArray :: from_option_iter ( values. into_iter ( ) . map ( Some ) ) . into_array ( ) ;
886+ assert_arrays_eq ! ( decoded. as_ref( ) , expected. as_ref( ) ) ;
882887 }
883888
884889 #[ test]
@@ -893,7 +898,8 @@ mod tests {
893898 . compress ( & IntegerStats :: generate ( & array) , false , 3 , & [ ] )
894899 . unwrap ( ) ;
895900
896- let decoded = compressed. to_primitive ( ) ;
897- assert_eq ! ( decoded. as_slice:: <i32 >( ) , values. as_slice( ) ) ;
901+ let decoded = compressed;
902+ let expected = Buffer :: copy_from ( & values) . into_array ( ) ;
903+ assert_arrays_eq ! ( decoded. as_ref( ) , expected. as_ref( ) ) ;
898904 }
899905}
0 commit comments