()
| 2290 | |
| 2291 | #[test] |
| 2292 | fn test_non_std_terminator() { |
| 2293 | let schema = Schema::new(vec![ |
| 2294 | Field::new("text1", DataType::Utf8, false), |
| 2295 | Field::new("text2", DataType::Utf8, false), |
| 2296 | ]); |
| 2297 | let builder = ReaderBuilder::new(Arc::new(schema)) |
| 2298 | .with_header(false) |
| 2299 | .with_terminator(b'\n'); // default is CRLF, change to LF |
| 2300 | |
| 2301 | let mut csv_text = Vec::new(); |
| 2302 | let mut csv_writer = std::io::Cursor::new(&mut csv_text); |
| 2303 | for index in 0..10 { |
| 2304 | let text1 = format!("id{index:}"); |
| 2305 | let text2 = format!("value{index:}"); |
| 2306 | csv_writer |
| 2307 | .write_fmt(format_args!("\"{text1}\",\"{text2}\"\n")) |
| 2308 | .unwrap(); |
| 2309 | } |
| 2310 | let mut csv_reader = std::io::Cursor::new(&csv_text); |
| 2311 | let mut reader = builder.build(&mut csv_reader).unwrap(); |
| 2312 | let batch = reader.next().unwrap().unwrap(); |
| 2313 | let col0 = batch.column(0); |
| 2314 | assert_eq!(col0.len(), 10); |
| 2315 | let col0_arr = col0.as_any().downcast_ref::<StringArray>().unwrap(); |
| 2316 | assert_eq!(col0_arr.value(0), "id0"); |
| 2317 | let col1 = batch.column(1); |
| 2318 | assert_eq!(col1.len(), 10); |
| 2319 | let col1_arr = col1.as_any().downcast_ref::<StringArray>().unwrap(); |
| 2320 | assert_eq!(col1_arr.value(5), "value5"); |
| 2321 | } |
| 2322 | |
| 2323 | #[test] |
| 2324 | fn test_header_bounds() { |
nothing calls this directly
no test coverage detected