Skip to content

Commit c17d42b

Browse files
committed
Improevements in tezsting class DetailedSpreadsheetsTest.
1 parent ba055da commit c17d42b

File tree

2 files changed

+54
-60
lines changed

2 files changed

+54
-60
lines changed

Tests/DetailedSpreadsheetsTest.cpp

+43-47
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ void DetailedSpreadsheetsTest::testBasics_data()
2020
const QVector<int> expectedRowCounts{49, 4, 30};
2121
const QVector<int> expectedColumnCounts{7, 5, 12};
2222

23-
for (int i = 0; i < fileNames_.size(); ++i)
23+
for (int i{0}; i < fileNames_.size(); ++i)
2424
{
2525
const QString testName{"Basic test for " + fileNames_[i] + "."};
2626
QTest::newRow(testName.toStdString().c_str())
@@ -46,13 +46,13 @@ void DetailedSpreadsheetsTest::testBasics()
4646
QCOMPARE(dataset->getName(), fileName);
4747
}
4848

49-
void DetailedSpreadsheetsTest::testColumns_data()
49+
void DetailedSpreadsheetsTest::testColumns_data() const
5050
{
5151
QTest::addColumn<QString>("fileName");
5252
QTest::addColumn<QVector<ColumnType>>("columnFormats");
5353
QTest::addColumn<QVector<QString>>("columnNames");
5454

55-
for (int i = 0; i < fileNames_.size(); ++i)
55+
for (int i{0}; i < fileNames_.size(); ++i)
5656
{
5757
const QString testName{"Column test for " + fileNames_[i] + "."};
5858
QTest::newRow(testName.toStdString().c_str())
@@ -71,13 +71,13 @@ void DetailedSpreadsheetsTest::testColumns()
7171
DatasetCommon::createDataset(fileName, filePath)};
7272
dataset->initialize();
7373

74-
checkColumnFormats(dataset, columnFormats);
75-
checkColumnNames(dataset, columnNames);
74+
checkColumnFormats(*dataset, columnFormats);
75+
checkColumnNames(*dataset, columnNames);
7676
}
7777

7878
Q_DECLARE_METATYPE(DetailedSpreadsheetsTest::Field)
7979

80-
void DetailedSpreadsheetsTest::testSampleData_data()
80+
void DetailedSpreadsheetsTest::testSampleData_data() const
8181
{
8282
QTest::addColumn<QString>("fileName");
8383
QTest::addColumn<int>("sampleRowCount");
@@ -87,7 +87,7 @@ void DetailedSpreadsheetsTest::testSampleData_data()
8787
const QVector<int> expectedSampleRowCounts{10, 4, 10};
8888
const QVector<int> expectedSampleColumnCounts{7, 5, 12};
8989

90-
for (int i = 0; i < fileNames_.size(); ++i)
90+
for (int i{0}; i < fileNames_.size(); ++i)
9191
{
9292
const QString testName{"Sample data test for " + fileNames_[i] + "."};
9393
QTest::newRow(testName.toStdString().c_str())
@@ -126,7 +126,7 @@ struct NumericCheckData
126126

127127
Q_DECLARE_METATYPE(NumericCheckData)
128128

129-
void DetailedSpreadsheetsTest::testNumericColumnRanges_data()
129+
void DetailedSpreadsheetsTest::testNumericColumnRanges_data() const
130130
{
131131
QTest::addColumn<QString>("fileName");
132132
QTest::addColumn<QVector<NumericCheckData>>("expectedRanges");
@@ -136,7 +136,7 @@ void DetailedSpreadsheetsTest::testNumericColumnRanges_data()
136136
{{0, 200000, 200003}, {1, 51, 54}},
137137
{{2, 0, 74.46}, {3, 0, 1.83}}};
138138

139-
for (int i = 0; i < fileNames_.size(); ++i)
139+
for (int i{0}; i < fileNames_.size(); ++i)
140140
{
141141
const QString testName{"Numeric ranges test for " + fileNames_[i] +
142142
"."};
@@ -154,10 +154,10 @@ void DetailedSpreadsheetsTest::testNumericColumnRanges()
154154
std::unique_ptr<Dataset> dataset{
155155
DatasetCommon::createDataset(fileName, filePath)};
156156

157-
prepareDatasetForTest(dataset);
157+
prepareDatasetForTest(*dataset);
158158

159159
for (const auto& [columnIndex, expectedMin, expectedMax] : expectedRanges)
160-
checkNumericColumnRange(dataset, columnIndex,
160+
checkNumericColumnRange(*dataset, columnIndex,
161161
{expectedMin, expectedMax});
162162
}
163163

@@ -172,7 +172,7 @@ struct DateCheckData
172172
Q_DECLARE_METATYPE(DateCheckData)
173173
Q_DECLARE_TYPEINFO(DateCheckData, Q_MOVABLE_TYPE);
174174

175-
void DetailedSpreadsheetsTest::testDateColumnRanges_data()
175+
void DetailedSpreadsheetsTest::testDateColumnRanges_data() const
176176
{
177177
QTest::addColumn<QString>("fileName");
178178
QTest::addColumn<DateCheckData>("expectedRanges");
@@ -182,7 +182,7 @@ void DetailedSpreadsheetsTest::testDateColumnRanges_data()
182182
{3, QDate(2012, 2, 2), QDate(2012, 2, 5), true},
183183
{1, QDate(1970, 1, 1), QDate(1970, 1, 30), false}};
184184

185-
for (int i = 0; i < fileNames_.size(); ++i)
185+
for (int i{0}; i < fileNames_.size(); ++i)
186186
{
187187
const QString testName{"Numeric ranges test for " + fileNames_[i] +
188188
"."};
@@ -200,15 +200,15 @@ void DetailedSpreadsheetsTest::testDateColumnRanges()
200200
std::unique_ptr<Dataset> dataset{
201201
DatasetCommon::createDataset(fileName, filePath)};
202202

203-
prepareDatasetForTest(dataset);
203+
prepareDatasetForTest(*dataset);
204204

205-
const auto& [columnIndex, expectedMin, expectedMax, expectedEmptyDates] =
206-
expectedRanges;
207-
checkDateColumnRange(dataset, columnIndex, {expectedMin, expectedMax},
205+
const auto& [columnIndex, expectedMin, expectedMax,
206+
expectedEmptyDates]{expectedRanges};
207+
checkDateColumnRange(*dataset, columnIndex, {expectedMin, expectedMax},
208208
expectedEmptyDates);
209209
}
210210

211-
void DetailedSpreadsheetsTest::testStringColumnRanges_data()
211+
void DetailedSpreadsheetsTest::testStringColumnRanges_data() const
212212
{
213213
QTest::addColumn<QString>("fileName");
214214
QTest::addColumn<int>("columnIndex");
@@ -220,7 +220,7 @@ void DetailedSpreadsheetsTest::testStringColumnRanges_data()
220220
{"a", "b", "c"},
221221
{}};
222222

223-
for (int i = 0; i < fileNames_.size(); ++i)
223+
for (int i{0}; i < fileNames_.size(); ++i)
224224
{
225225
const QString testName{"Numeric ranges test for " + fileNames_[i] +
226226
"."};
@@ -239,9 +239,9 @@ void DetailedSpreadsheetsTest::testStringColumnRanges()
239239
std::unique_ptr<Dataset> dataset{
240240
DatasetCommon::createDataset(fileName, filePath)};
241241

242-
prepareDatasetForTest(dataset);
242+
prepareDatasetForTest(*dataset);
243243

244-
checkStringColumnRange(dataset, columnIndex, expectedStrings);
244+
checkStringColumnRange(*dataset, columnIndex, expectedStrings);
245245
}
246246

247247
void DetailedSpreadsheetsTest::testDataFile01SomeColumnsActive_data()
@@ -271,71 +271,67 @@ void DetailedSpreadsheetsTest::testDataFile01SomeColumnsActive()
271271
dataset->setActiveColumns(activeColumns);
272272
dataset->loadData();
273273

274-
checkNumericColumnRange(dataset, 1, {19.23, 94.68});
275-
checkNumericColumnRange(dataset, 2, {3376.03, 23223.09});
274+
checkNumericColumnRange(*dataset, 1, {19.23, 94.68});
275+
checkNumericColumnRange(*dataset, 2, {3376.03, 23223.09});
276276

277-
checkDateColumnRange(dataset, 0, {QDate(2010, 1, 7), QDate(2010, 2, 27)},
277+
checkDateColumnRange(*dataset, 0, {QDate(2010, 1, 7), QDate(2010, 2, 27)},
278278
false);
279279

280-
const QStringList compareList = {"brown", "red", "yellow", "black",
281-
"blue", "pink", "white"};
282-
checkStringColumnRange(dataset, 3, compareList);
280+
const QStringList compareList{
281+
{"brown", "red", "yellow", "black", "blue", "pink", "white"}};
282+
checkStringColumnRange(*dataset, 3, compareList);
283283

284284
DatasetCommon::compareExportDataWithDump(std::move(dataset), filePath);
285285
}
286286

287287
void DetailedSpreadsheetsTest::checkColumnFormats(
288-
const std::unique_ptr<Dataset>& dataset,
289-
const QVector<ColumnType>& columnFormats)
288+
const Dataset& dataset, const QVector<ColumnType>& columnFormats)
290289
{
291290
int column{0};
292291
for (const auto& expectedColumnType : columnFormats)
293-
QCOMPARE(dataset->getColumnFormat(column++), expectedColumnType);
292+
QCOMPARE(dataset.getColumnFormat(column++), expectedColumnType);
294293
}
295294

296295
void DetailedSpreadsheetsTest::checkColumnNames(
297-
const std::unique_ptr<Dataset>& dataset,
298-
const QVector<QString>& columnNames)
296+
const Dataset& dataset, const QVector<QString>& columnNames)
299297
{
300298
int column{0};
301299
for (const auto& expectedColumnName : columnNames)
302-
QCOMPARE(dataset->getHeaderName(column++), expectedColumnName);
300+
QCOMPARE(dataset.getHeaderName(column++), expectedColumnName);
303301
}
304302

305303
void DetailedSpreadsheetsTest::checkNumericColumnRange(
306-
const std::unique_ptr<Dataset>& dataset, int columnIndex,
304+
const Dataset& dataset, int columnIndex,
307305
std::pair<double, double> expectedRange)
308306
{
309-
auto [currentMin, currentMax] = dataset->getNumericRange(columnIndex);
307+
auto [currentMin, currentMax]{dataset.getNumericRange(columnIndex)};
310308
const auto [expectedMin, expectedMax] = expectedRange;
311309
QCOMPARE(currentMin, expectedMin);
312310
QCOMPARE(currentMax, expectedMax);
313311
}
314312

315313
void DetailedSpreadsheetsTest::checkDateColumnRange(
316-
const std::unique_ptr<Dataset>& dataset, int columnIndex,
314+
const Dataset& dataset, int columnIndex,
317315
std::pair<QDate, QDate> expectedRange, bool expectedEmptyDates)
318316
{
319-
auto [currentMinDate, currentMaxDate, currentEmpty] =
320-
dataset->getDateRange(columnIndex);
321-
const auto [expectedMin, expectedMax] = expectedRange;
317+
auto [currentMinDate, currentMaxDate,
318+
currentEmpty]{dataset.getDateRange(columnIndex)};
319+
const auto [expectedMin, expectedMax]{expectedRange};
322320
QCOMPARE(currentMinDate, expectedMin);
323321
QCOMPARE(currentMaxDate, expectedMax);
324322
QCOMPARE(currentEmpty, expectedEmptyDates);
325323
}
326324

327325
void DetailedSpreadsheetsTest::checkStringColumnRange(
328-
const std::unique_ptr<Dataset>& dataset, int columnIndex,
329-
const QStringList& expectedList)
326+
const Dataset& dataset, int columnIndex, const QStringList& expectedList)
330327
{
331-
const QStringList currentList{dataset->getStringList(columnIndex)};
328+
const QStringList currentList{dataset.getStringList(columnIndex)};
332329
QCOMPARE(currentList, expectedList);
333330
}
334331

335-
void DetailedSpreadsheetsTest::prepareDatasetForTest(
336-
std::unique_ptr<Dataset>& dataset)
332+
void DetailedSpreadsheetsTest::prepareDatasetForTest(Dataset& dataset)
337333
{
338-
dataset->initialize();
339-
DatasetCommon::activateAllDatasetColumns(*dataset);
340-
dataset->loadData();
334+
dataset.initialize();
335+
DatasetCommon::activateAllDatasetColumns(dataset);
336+
dataset.loadData();
341337
}

Tests/DetailedSpreadsheetsTest.h

+11-13
Original file line numberDiff line numberDiff line change
@@ -30,45 +30,43 @@ private slots:
3030
void testBasics_data();
3131
static void testBasics();
3232

33-
void testColumns_data();
33+
void testColumns_data() const;
3434
static void testColumns();
3535

36-
void testSampleData_data();
36+
void testSampleData_data() const;
3737
static void testSampleData();
3838

39-
void testNumericColumnRanges_data();
39+
void testNumericColumnRanges_data() const;
4040
static void testNumericColumnRanges();
4141

42-
void testDateColumnRanges_data();
42+
void testDateColumnRanges_data() const;
4343
static void testDateColumnRanges();
4444

45-
void testStringColumnRanges_data();
45+
void testStringColumnRanges_data() const;
4646
static void testStringColumnRanges();
4747

4848
static void testDataFile01SomeColumnsActive_data();
4949
static void testDataFile01SomeColumnsActive();
5050

5151
private:
5252
static void checkNumericColumnRange(
53-
const std::unique_ptr<Dataset>& dataset, int columnIndex,
53+
const Dataset& dataset, int columnIndex,
5454
std::pair<double, double> expectedRange);
5555

56-
static void checkDateColumnRange(const std::unique_ptr<Dataset>& dataset,
57-
int columnIndex,
56+
static void checkDateColumnRange(const Dataset& dataset, int columnIndex,
5857
std::pair<QDate, QDate> expectedRange,
5958
bool expectedEmptyDates);
6059

61-
static void checkStringColumnRange(const std::unique_ptr<Dataset>& dataset,
62-
int columnIndex,
60+
static void checkStringColumnRange(const Dataset& dataset, int columnIndex,
6361
const QStringList& expectedList);
6462

65-
static void checkColumnFormats(const std::unique_ptr<Dataset>& dataset,
63+
static void checkColumnFormats(const Dataset& dataset,
6664
const QVector<ColumnType>& columnFormats);
6765

68-
static void checkColumnNames(const std::unique_ptr<Dataset>& dataset,
66+
static void checkColumnNames(const Dataset& dataset,
6967
const QVector<QString>& columnNames);
7068

71-
static void prepareDatasetForTest(std::unique_ptr<Dataset>& dataset);
69+
static void prepareDatasetForTest(Dataset& dataset);
7270

7371
const QVector<QString> fileNames_{"test01.xlsx", "test01.ods",
7472
"test03.xlsx", "test03.ods",

0 commit comments

Comments
 (0)