()
| 3779 | |
| 3780 | #[test] |
| 3781 | fn encode_rows_appends_to_existing_buffer() { |
| 3782 | let schema = ArrowSchema::new(vec![Field::new("x", DataType::Int32, false)]); |
| 3783 | let arr = Int32Array::from(vec![5, 6]); |
| 3784 | let batch = RecordBatch::try_new(Arc::new(schema.clone()), vec![Arc::new(arr)]).unwrap(); |
| 3785 | let encoder = RecordEncoder { |
| 3786 | columns: vec![FieldBinding { |
| 3787 | arrow_index: 0, |
| 3788 | nullability: None, |
| 3789 | plan: FieldPlan::Scalar, |
| 3790 | }], |
| 3791 | prefix: None, |
| 3792 | }; |
| 3793 | let mut out = BytesMut::new(); |
| 3794 | out.extend_from_slice(&[0xAA, 0xBB]); |
| 3795 | let mut offsets: Vec<usize> = vec![0, out.len()]; |
| 3796 | encoder |
| 3797 | .encode_rows(&batch, 16, &mut out, &mut offsets) |
| 3798 | .unwrap(); |
| 3799 | assert_eq!(offsets.len(), 4); |
| 3800 | assert_eq!(*offsets.last().unwrap(), out.len()); |
| 3801 | assert_bytes_eq(row_slice(&out, &offsets, 0), &[0xAA, 0xBB]); |
| 3802 | assert_bytes_eq(row_slice(&out, &offsets, 1), &avro_long_bytes(5)); |
| 3803 | assert_bytes_eq(row_slice(&out, &offsets, 2), &avro_long_bytes(6)); |
| 3804 | } |
| 3805 | |
| 3806 | #[test] |
| 3807 | fn encode_rows_nullable_column() { |
nothing calls this directly
no test coverage detected