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

Function test_io

arrow-csv/src/reader/mod.rs:2648–2672  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

2646
2647 #[test]
2648 fn test_io() {
2649 let schema = Arc::new(Schema::new(vec![
2650 Field::new("a", DataType::Utf8, false),
2651 Field::new("b", DataType::Utf8, false),
2652 ]));
2653 let csv = "foo,bar\nbaz,foo\na,b\nc,d";
2654 let mut read = InstrumentedRead::new(Cursor::new(csv.as_bytes()));
2655 let reader = ReaderBuilder::new(schema)
2656 .with_batch_size(3)
2657 .build_buffered(&mut read)
2658 .unwrap();
2659
2660 let batches = reader.collect::<Result<Vec<_>, _>>().unwrap();
2661 assert_eq!(batches.len(), 2);
2662 assert_eq!(batches[0].num_rows(), 3);
2663 assert_eq!(batches[1].num_rows(), 1);
2664
2665 // Expect 4 calls to fill_buf
2666 // 1. Read first 3 rows
2667 // 2. Read final row
2668 // 3. Delimit and flush final row
2669 // 4. Iterator finished
2670 assert_eq!(&read.fill_sizes, &[23, 3, 0, 0]);
2671 assert_eq!(read.fill_count, 4);
2672 }
2673
2674 #[test]
2675 fn test_inference() {

Callers

nothing calls this directly

Calls 3

build_bufferedMethod · 0.80
as_bytesMethod · 0.45
with_batch_sizeMethod · 0.45

Tested by

no test coverage detected