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

Function test_map_keys_values_append

arrow/tests/array_transform.rs:835–883  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

833
834#[test]
835fn test_map_keys_values_append() {
836 let mut builder = MapBuilder::<Int64Builder, Int64Builder>::new(
837 None,
838 Int64Builder::with_capacity(32),
839 Int64Builder::with_capacity(32),
840 );
841 let (keys, values) = builder.entries();
842 keys.append_slice(&[1, 2, 3]);
843 values.append_slice(&[1, 3, 4]);
844 builder.append(true).unwrap();
845
846 let (keys, values) = builder.entries();
847 keys.append_slice(&[4, 5]);
848 values.append_slice(&[4, 6]);
849 builder.append(true).unwrap();
850
851 builder.append(false).unwrap();
852
853 let map = builder.finish();
854 assert!(map.is_null(2));
855
856 let first = map.value(0);
857 let keys = first
858 .column(0)
859 .as_any()
860 .downcast_ref::<Int64Array>()
861 .unwrap();
862 let values = first
863 .column(1)
864 .as_any()
865 .downcast_ref::<Int64Array>()
866 .unwrap();
867 assert_eq!(keys, &Int64Array::from(vec![Some(1), Some(2), Some(3)]));
868 assert_eq!(values, &Int64Array::from(vec![Some(1), Some(3), Some(4)]));
869
870 let second = map.value(1);
871 let keys = second
872 .column(0)
873 .as_any()
874 .downcast_ref::<Int64Array>()
875 .unwrap();
876 let values = second
877 .column(1)
878 .as_any()
879 .downcast_ref::<Int64Array>()
880 .unwrap();
881 assert_eq!(keys, &Int64Array::from(vec![Some(4), Some(5)]));
882 assert_eq!(values, &Int64Array::from(vec![Some(4), Some(6)]));
883}
884
885#[test]
886fn test_list_of_strings_append() {

Callers

nothing calls this directly

Calls 7

entriesMethod · 0.45
append_sliceMethod · 0.45
appendMethod · 0.45
finishMethod · 0.45
valueMethod · 0.45
as_anyMethod · 0.45
columnMethod · 0.45

Tested by

no test coverage detected