| 153 | } |
| 154 | |
| 155 | void AssertConversionError(const std::shared_ptr<DataType>& type, |
| 156 | const std::vector<std::string>& csv_string, |
| 157 | const std::set<int32_t>& invalid_columns, |
| 158 | ConvertOptions options = ConvertOptions::Defaults()) { |
| 159 | std::shared_ptr<BlockParser> parser; |
| 160 | std::shared_ptr<Converter> converter; |
| 161 | |
| 162 | ASSERT_OK_AND_ASSIGN(converter, Converter::Make(type, options)); |
| 163 | |
| 164 | MakeCSVParser(csv_string, &parser); |
| 165 | for (int32_t i = 0; i < parser->num_cols(); ++i) { |
| 166 | if (invalid_columns.find(i) == invalid_columns.end()) { |
| 167 | ASSERT_OK(converter->Convert(*parser, i)); |
| 168 | } else { |
| 169 | ASSERT_RAISES(Invalid, converter->Convert(*parser, i)); |
| 170 | } |
| 171 | } |
| 172 | } |
| 173 | |
| 174 | ////////////////////////////////////////////////////////////////////////// |
| 175 | // Converter tests |
no test coverage detected