Skip to content

Commit 93b300d

Browse files
committed
Use nullptr explicitly instead of 0
1 parent e964e55 commit 93b300d

File tree

1 file changed

+73
-58
lines changed

1 file changed

+73
-58
lines changed

cpp/src/arrow/flight/sql/odbc/tests/columns_test.cc

Lines changed: 73 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -80,52 +80,59 @@ void CheckSQLColAttribute(SQLHSTMT stmt, SQLUSMALLINT idx,
8080
SQLLEN unsigned_col = 0;
8181

8282
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_NAME, &name[0],
83-
(SQLSMALLINT)name.size(), &name_len, 0));
83+
(SQLSMALLINT)name.size(), &name_len, nullptr));
8484

85-
EXPECT_EQ(SQL_SUCCESS,
86-
SQLColAttribute(stmt, idx, SQL_DESC_BASE_COLUMN_NAME, &base_column_name[0],
87-
(SQLSMALLINT)base_column_name.size(), &column_name_len, 0));
85+
EXPECT_EQ(
86+
SQL_SUCCESS,
87+
SQLColAttribute(stmt, idx, SQL_DESC_BASE_COLUMN_NAME, &base_column_name[0],
88+
(SQLSMALLINT)base_column_name.size(), &column_name_len, nullptr));
8889

8990
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_LABEL, &label[0],
90-
(SQLSMALLINT)label.size(), &label_len, 0));
91-
92-
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_TYPE, 0, 0, 0, &data_type));
91+
(SQLSMALLINT)label.size(), &label_len, nullptr));
9392

9493
EXPECT_EQ(SQL_SUCCESS,
95-
SQLColAttribute(stmt, idx, SQL_DESC_CONCISE_TYPE, 0, 0, 0, &concise_type));
94+
SQLColAttribute(stmt, idx, SQL_DESC_TYPE, 0, 0, nullptr, &data_type));
9695

97-
EXPECT_EQ(SQL_SUCCESS,
98-
SQLColAttribute(stmt, idx, SQL_DESC_DISPLAY_SIZE, 0, 0, 0, &display_size));
96+
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_CONCISE_TYPE, 0, 0, nullptr,
97+
&concise_type));
9998

100-
EXPECT_EQ(SQL_SUCCESS,
101-
SQLColAttribute(stmt, idx, SQL_DESC_FIXED_PREC_SCALE, 0, 0, 0, &prec_scale));
99+
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_DISPLAY_SIZE, 0, 0, nullptr,
100+
&display_size));
102101

103-
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_LENGTH, 0, 0, 0, &length));
102+
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_FIXED_PREC_SCALE, 0, 0,
103+
nullptr, &prec_scale));
104104

105-
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_LITERAL_PREFIX, &prefix[0],
106-
(SQLSMALLINT)prefix.size(), &prefix_len, 0));
105+
EXPECT_EQ(SQL_SUCCESS,
106+
SQLColAttribute(stmt, idx, SQL_DESC_LENGTH, 0, 0, nullptr, &length));
107107

108-
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_LITERAL_SUFFIX, &suffix[0],
109-
(SQLSMALLINT)suffix.size(), &suffix_len, 0));
108+
EXPECT_EQ(SQL_SUCCESS,
109+
SQLColAttribute(stmt, idx, SQL_DESC_LITERAL_PREFIX, &prefix[0],
110+
(SQLSMALLINT)prefix.size(), &prefix_len, nullptr));
110111

111-
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_PRECISION, 0, 0, 0, &size));
112+
EXPECT_EQ(SQL_SUCCESS,
113+
SQLColAttribute(stmt, idx, SQL_DESC_LITERAL_SUFFIX, &suffix[0],
114+
(SQLSMALLINT)suffix.size(), &suffix_len, nullptr));
112115

113-
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_SCALE, 0, 0, 0, &scale));
116+
EXPECT_EQ(SQL_SUCCESS,
117+
SQLColAttribute(stmt, idx, SQL_DESC_PRECISION, 0, 0, nullptr, &size));
118+
119+
EXPECT_EQ(SQL_SUCCESS,
120+
SQLColAttribute(stmt, idx, SQL_DESC_SCALE, 0, 0, nullptr, &scale));
114121

115122
EXPECT_EQ(SQL_SUCCESS,
116-
SQLColAttribute(stmt, idx, SQL_DESC_NULLABLE, 0, 0, 0, &nullability));
123+
SQLColAttribute(stmt, idx, SQL_DESC_NULLABLE, 0, 0, nullptr, &nullability));
117124

118125
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_NUM_PREC_RADIX, 0, 0, 0,
119126
&num_prec_radix));
120127

121-
EXPECT_EQ(SQL_SUCCESS,
122-
SQLColAttribute(stmt, idx, SQL_DESC_OCTET_LENGTH, 0, 0, 0, &octet_length));
128+
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, SQL_DESC_OCTET_LENGTH, 0, 0, nullptr,
129+
&octet_length));
123130

124131
EXPECT_EQ(SQL_SUCCESS,
125-
SQLColAttribute(stmt, idx, SQL_DESC_SEARCHABLE, 0, 0, 0, &searchable));
132+
SQLColAttribute(stmt, idx, SQL_DESC_SEARCHABLE, 0, 0, nullptr, &searchable));
126133

127134
EXPECT_EQ(SQL_SUCCESS,
128-
SQLColAttribute(stmt, idx, SQL_DESC_UNSIGNED, 0, 0, 0, &unsigned_col));
135+
SQLColAttribute(stmt, idx, SQL_DESC_UNSIGNED, 0, 0, nullptr, &unsigned_col));
129136

130137
std::wstring name_str = ConvertToWString(name, name_len);
131138
std::wstring base_column_name_str = ConvertToWString(base_column_name, column_name_len);
@@ -173,36 +180,38 @@ void CheckSQLColAttributes(SQLHSTMT stmt, SQLUSMALLINT idx,
173180
SQLLEN unsigned_col = 0;
174181

175182
EXPECT_EQ(SQL_SUCCESS, SQLColAttributes(stmt, idx, SQL_COLUMN_NAME, &name[0],
176-
(SQLSMALLINT)name.size(), &name_len, 0));
177-
178-
EXPECT_EQ(SQL_SUCCESS, SQLColAttributes(stmt, idx, SQL_COLUMN_LABEL, &label[0],
179-
(SQLSMALLINT)label.size(), &label_len, 0));
183+
(SQLSMALLINT)name.size(), &name_len, nullptr));
180184

181185
EXPECT_EQ(SQL_SUCCESS,
182-
SQLColAttributes(stmt, idx, SQL_COLUMN_TYPE, 0, 0, 0, &data_type));
186+
SQLColAttributes(stmt, idx, SQL_COLUMN_LABEL, &label[0],
187+
(SQLSMALLINT)label.size(), &label_len, nullptr));
183188

184189
EXPECT_EQ(SQL_SUCCESS,
185-
SQLColAttributes(stmt, idx, SQL_COLUMN_DISPLAY_SIZE, 0, 0, 0, &display_size));
190+
SQLColAttributes(stmt, idx, SQL_COLUMN_TYPE, 0, 0, nullptr, &data_type));
186191

187-
EXPECT_EQ(SQL_SUCCESS,
188-
SQLColAttribute(stmt, idx, SQL_COLUMN_MONEY, 0, 0, 0, &prec_scale));
192+
EXPECT_EQ(SQL_SUCCESS, SQLColAttributes(stmt, idx, SQL_COLUMN_DISPLAY_SIZE, 0, 0,
193+
nullptr, &display_size));
189194

190195
EXPECT_EQ(SQL_SUCCESS,
191-
SQLColAttributes(stmt, idx, SQL_COLUMN_LENGTH, 0, 0, 0, &length));
196+
SQLColAttribute(stmt, idx, SQL_COLUMN_MONEY, 0, 0, nullptr, &prec_scale));
192197

193198
EXPECT_EQ(SQL_SUCCESS,
194-
SQLColAttributes(stmt, idx, SQL_COLUMN_PRECISION, 0, 0, 0, &size));
195-
196-
EXPECT_EQ(SQL_SUCCESS, SQLColAttributes(stmt, idx, SQL_COLUMN_SCALE, 0, 0, 0, &scale));
199+
SQLColAttributes(stmt, idx, SQL_COLUMN_LENGTH, 0, 0, nullptr, &length));
197200

198201
EXPECT_EQ(SQL_SUCCESS,
199-
SQLColAttributes(stmt, idx, SQL_COLUMN_NULLABLE, 0, 0, 0, &nullability));
202+
SQLColAttributes(stmt, idx, SQL_COLUMN_PRECISION, 0, 0, nullptr, &size));
200203

201204
EXPECT_EQ(SQL_SUCCESS,
202-
SQLColAttributes(stmt, idx, SQL_COLUMN_SEARCHABLE, 0, 0, 0, &searchable));
205+
SQLColAttributes(stmt, idx, SQL_COLUMN_SCALE, 0, 0, nullptr, &scale));
203206

204-
EXPECT_EQ(SQL_SUCCESS,
205-
SQLColAttributes(stmt, idx, SQL_COLUMN_UNSIGNED, 0, 0, 0, &unsigned_col));
207+
EXPECT_EQ(SQL_SUCCESS, SQLColAttributes(stmt, idx, SQL_COLUMN_NULLABLE, 0, 0, nullptr,
208+
&nullability));
209+
210+
EXPECT_EQ(SQL_SUCCESS, SQLColAttributes(stmt, idx, SQL_COLUMN_SEARCHABLE, 0, 0, nullptr,
211+
&searchable));
212+
213+
EXPECT_EQ(SQL_SUCCESS, SQLColAttributes(stmt, idx, SQL_COLUMN_UNSIGNED, 0, 0, nullptr,
214+
&unsigned_col));
206215

207216
std::wstring name_str = ConvertToWString(name, name_len);
208217
std::wstring label_str = ConvertToWString(label, label_len);
@@ -235,7 +244,7 @@ void GetSQLColAttributeString(SQLHSTMT stmt, const std::wstring& wsql, SQLUSMALL
235244
SQLSMALLINT str_len = 0;
236245

237246
ASSERT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, field_identifier, &str_val[0],
238-
(SQLSMALLINT)str_val.size(), &str_len, 0));
247+
(SQLSMALLINT)str_val.size(), &str_len, nullptr));
239248

240249
value = ConvertToWString(str_val, str_len);
241250
}
@@ -255,8 +264,9 @@ void GetSQLColAttributesString(SQLHSTMT stmt, const std::wstring& wsql, SQLUSMAL
255264
std::vector<SQLWCHAR> str_val(kOdbcBufferSize);
256265
SQLSMALLINT str_len = 0;
257266

258-
ASSERT_EQ(SQL_SUCCESS, SQLColAttributes(stmt, idx, field_identifier, &str_val[0],
259-
(SQLSMALLINT)str_val.size(), &str_len, 0));
267+
ASSERT_EQ(SQL_SUCCESS,
268+
SQLColAttributes(stmt, idx, field_identifier, &str_val[0],
269+
(SQLSMALLINT)str_val.size(), &str_len, nullptr));
260270

261271
value = ConvertToWString(str_val, str_len);
262272
}
@@ -271,7 +281,8 @@ void GetSQLColAttributeNumeric(SQLHSTMT stmt, const std::wstring& wsql, SQLUSMAL
271281
ASSERT_EQ(SQL_SUCCESS, SQLFetch(stmt));
272282

273283
SQLLEN num_val = 0;
274-
ASSERT_EQ(SQL_SUCCESS, SQLColAttribute(stmt, idx, field_identifier, 0, 0, 0, value));
284+
ASSERT_EQ(SQL_SUCCESS,
285+
SQLColAttribute(stmt, idx, field_identifier, 0, 0, nullptr, value));
275286
}
276287

277288
void GetSQLColAttributesNumeric(SQLHSTMT stmt, const std::wstring& wsql, SQLUSMALLINT idx,
@@ -284,7 +295,8 @@ void GetSQLColAttributesNumeric(SQLHSTMT stmt, const std::wstring& wsql, SQLUSMA
284295
ASSERT_EQ(SQL_SUCCESS, SQLFetch(stmt));
285296

286297
SQLLEN num_val = 0;
287-
ASSERT_EQ(SQL_SUCCESS, SQLColAttributes(stmt, idx, field_identifier, 0, 0, 0, value));
298+
ASSERT_EQ(SQL_SUCCESS,
299+
SQLColAttributes(stmt, idx, field_identifier, 0, 0, nullptr, value));
288300
}
289301
} // namespace
290302

@@ -303,19 +315,21 @@ TYPED_TEST(ColumnsTest, SQLColAttributeTestInputData) {
303315
SQLLEN numeric_attr = 0;
304316

305317
// All character values populated
306-
EXPECT_EQ(SQL_SUCCESS,
307-
SQLColAttribute(this->stmt, idx, SQL_DESC_NAME, &character_attr[0],
308-
(SQLSMALLINT)character_attr.size(), &character_attr_len, 0));
318+
EXPECT_EQ(
319+
SQL_SUCCESS,
320+
SQLColAttribute(this->stmt, idx, SQL_DESC_NAME, &character_attr[0],
321+
(SQLSMALLINT)character_attr.size(), &character_attr_len, nullptr));
309322

310323
// All numeric values populated
311-
EXPECT_EQ(SQL_SUCCESS,
312-
SQLColAttribute(this->stmt, idx, SQL_DESC_COUNT, 0, 0, 0, &numeric_attr));
324+
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(this->stmt, idx, SQL_DESC_COUNT, 0, 0, nullptr,
325+
&numeric_attr));
313326

314327
// Pass null values, driver should not throw error
315-
EXPECT_EQ(SQL_SUCCESS,
316-
SQLColAttribute(this->stmt, idx, SQL_COLUMN_TABLE_NAME, 0, 0, 0, 0));
328+
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(this->stmt, idx, SQL_COLUMN_TABLE_NAME, 0, 0,
329+
nullptr, nullptr));
317330

318-
EXPECT_EQ(SQL_SUCCESS, SQLColAttribute(this->stmt, idx, SQL_DESC_COUNT, 0, 0, 0, 0));
331+
EXPECT_EQ(SQL_SUCCESS,
332+
SQLColAttribute(this->stmt, idx, SQL_DESC_COUNT, 0, 0, nullptr, nullptr));
319333
}
320334

321335
TYPED_TEST(ColumnsTest, SQLColAttributeGetCharacterLen) {
@@ -331,7 +345,7 @@ TYPED_TEST(ColumnsTest, SQLColAttributeGetCharacterLen) {
331345

332346
// Check length of character attribute
333347
ASSERT_EQ(SQL_SUCCESS, SQLColAttribute(this->stmt, 1, SQL_DESC_BASE_COLUMN_NAME, 0, 0,
334-
&character_attr_len, 0));
348+
&character_attr_len, nullptr));
335349
EXPECT_EQ(4 * GetSqlWCharSize(), character_attr_len);
336350
}
337351

@@ -350,9 +364,10 @@ TYPED_TEST(ColumnsTest, SQLColAttributeInvalidFieldId) {
350364
SQLSMALLINT character_attr_len = 0;
351365
SQLLEN numeric_attr = 0;
352366

353-
ASSERT_EQ(SQL_ERROR,
354-
SQLColAttribute(this->stmt, idx, invalid_field_id, &character_attr[0],
355-
(SQLSMALLINT)character_attr.size(), &character_attr_len, 0));
367+
ASSERT_EQ(
368+
SQL_ERROR,
369+
SQLColAttribute(this->stmt, idx, invalid_field_id, &character_attr[0],
370+
(SQLSMALLINT)character_attr.size(), &character_attr_len, nullptr));
356371
// Verify invalid descriptor field identifier error state is returned
357372
VerifyOdbcErrorState(SQL_HANDLE_STMT, this->stmt, kErrorStateHY091);
358373
}
@@ -373,7 +388,7 @@ TYPED_TEST(ColumnsTest, SQLColAttributeInvalidColId) {
373388
ASSERT_EQ(SQL_ERROR,
374389
SQLColAttribute(this->stmt, invalid_col_id, SQL_DESC_BASE_COLUMN_NAME,
375390
&character_attr[0], (SQLSMALLINT)character_attr.size(),
376-
&character_attr_len, 0));
391+
&character_attr_len, nullptr));
377392
// Verify invalid descriptor index error state is returned
378393
VerifyOdbcErrorState(SQL_HANDLE_STMT, this->stmt, kErrorState07009);
379394
}

0 commit comments

Comments
 (0)