| 775 | |
| 776 | template <typename DType> |
| 777 | void CheckReadBatches(int col_index, int expect_values) { |
| 778 | ASSERT_GT(column_readers_.size(), col_index); |
| 779 | auto column_reader = |
| 780 | std::dynamic_pointer_cast<TypedColumnReader<DType>>(column_readers_[col_index]); |
| 781 | ASSERT_NE(nullptr, column_reader); |
| 782 | int64_t total_values = 0; |
| 783 | std::vector<typename DType::c_type> values(1024); |
| 784 | |
| 785 | while (column_reader->HasNext()) { |
| 786 | int64_t values_read; |
| 787 | int64_t levels_read = column_reader->ReadBatch(values.size(), nullptr, nullptr, |
| 788 | values.data(), &values_read); |
| 789 | EXPECT_EQ(levels_read, values_read); |
| 790 | total_values += values_read; |
| 791 | } |
| 792 | EXPECT_EQ(expect_values, total_values); |
| 793 | } |
| 794 | |
| 795 | void CheckCorrectCrc(const std::string& file_path, bool page_checksum_verification) { |
| 796 | reader_props_.set_page_checksum_verification(page_checksum_verification); |