| 471 | } |
| 472 | |
| 473 | void DoSimpleRoundtrip(const std::shared_ptr<Table>& table, bool use_threads, |
| 474 | int64_t row_group_size, const std::vector<int>& column_subset, |
| 475 | std::shared_ptr<Table>* out, |
| 476 | const std::shared_ptr<ArrowWriterProperties>& |
| 477 | arrow_writer_properties = default_arrow_writer_properties(), |
| 478 | const ArrowReaderProperties& arrow_reader_properties = |
| 479 | default_arrow_reader_properties()) { |
| 480 | std::shared_ptr<Buffer> buffer; |
| 481 | ASSERT_NO_FATAL_FAILURE( |
| 482 | WriteTableToBuffer(table, row_group_size, arrow_writer_properties, &buffer)); |
| 483 | |
| 484 | std::unique_ptr<FileReader> reader; |
| 485 | FileReaderBuilder builder; |
| 486 | ASSERT_OK_NO_THROW(builder.Open(std::make_shared<BufferReader>(buffer))); |
| 487 | ASSERT_OK(builder.properties(arrow_reader_properties)->Build(&reader)); |
| 488 | |
| 489 | reader->set_use_threads(use_threads); |
| 490 | if (column_subset.size() > 0) { |
| 491 | ASSERT_OK_AND_ASSIGN(*out, reader->ReadTable(column_subset)); |
| 492 | } else { |
| 493 | // Read everything |
| 494 | ASSERT_OK_AND_ASSIGN(*out, reader->ReadTable()); |
| 495 | } |
| 496 | } |
| 497 | |
| 498 | void DoRoundTripWithBatches( |
| 499 | const std::shared_ptr<Table>& table, bool use_threads, int64_t row_group_size, |
no test coverage detected