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

Function test_nullable_list

parquet/src/arrow/array_reader/list_array.rs:415–450  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

413 }
414
415 fn test_nullable_list<OffsetSize: OffsetSizeTrait>() {
416 // [[1, null, 2], null, [], [3, 4], [], [], null, [], [null, 1]]
417 let expected =
418 GenericListArray::<OffsetSize>::from_iter_primitive::<Int32Type, _, _>(vec![
419 Some(vec![Some(1), None, Some(2)]),
420 None,
421 Some(vec![]),
422 Some(vec![Some(3), Some(4)]),
423 Some(vec![]),
424 Some(vec![]),
425 None,
426 Some(vec![]),
427 Some(vec![None, Some(1)]),
428 ]);
429
430 let item_array_reader = make_int32_page_reader(
431 &[1, 2, 3, 4, 1],
432 &[3, 2, 3, 0, 1, 3, 3, 1, 1, 0, 1, 2, 3],
433 &[0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1],
434 3,
435 1,
436 );
437
438 let mut list_array_reader = ListArrayReader::<OffsetSize>::new(
439 item_array_reader,
440 list_type::<OffsetSize>(ArrowType::Int32, true),
441 2,
442 1,
443 true,
444 );
445
446 let actual = list_array_reader.next_batch(1024).unwrap();
447 let actual = downcast::<OffsetSize>(&actual);
448
449 assert_eq!(&expected, actual)
450 }
451
452 fn test_list_array<OffsetSize: OffsetSizeTrait>() {
453 test_nullable_list::<OffsetSize>();

Callers

nothing calls this directly

Calls 2

make_int32_page_readerFunction · 0.85
next_batchMethod · 0.45

Tested by

no test coverage detected