| 2557 | } |
| 2558 | |
| 2559 | fn err_test(csv: &[u8], expected: &str) { |
| 2560 | fn err_test_with_schema(csv: &[u8], expected: &str, schema: Arc<Schema>) { |
| 2561 | let buffer = std::io::BufReader::with_capacity(2, Cursor::new(csv)); |
| 2562 | let b = ReaderBuilder::new(schema) |
| 2563 | .with_batch_size(2) |
| 2564 | .build_buffered(buffer) |
| 2565 | .unwrap(); |
| 2566 | let err = b.collect::<Result<Vec<_>, _>>().unwrap_err().to_string(); |
| 2567 | assert_eq!(err, expected) |
| 2568 | } |
| 2569 | |
| 2570 | let schema_utf8 = Arc::new(Schema::new(vec![ |
| 2571 | Field::new("text1", DataType::Utf8, true), |
| 2572 | Field::new("text2", DataType::Utf8, true), |
| 2573 | ])); |
| 2574 | err_test_with_schema(csv, expected, schema_utf8); |
| 2575 | |
| 2576 | let schema_utf8view = Arc::new(Schema::new(vec![ |
| 2577 | Field::new("text1", DataType::Utf8View, true), |
| 2578 | Field::new("text2", DataType::Utf8View, true), |
| 2579 | ])); |
| 2580 | err_test_with_schema(csv, expected, schema_utf8view); |
| 2581 | } |
| 2582 | |
| 2583 | #[test] |
| 2584 | fn test_invalid_utf8() { |