MCPcopy Create free account
hub / github.com/KDE/labplot / testDTAImport

Method testDTAImport

tests/import_export/ReadStat/ReadStatFilterTest.cpp:17–63  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

15#include <KLocalizedString>
16
17void ReadStatFilterTest::testDTAImport() {
18 Spreadsheet spreadsheet(QStringLiteral("test"), false);
19 ReadStatFilter filter;
20
21 const QString& fileName = QFINDTESTDATA(QLatin1String("data/iris.dta"));
22 const auto mode = AbstractFileFilter::ImportMode::Replace;
23 filter.readDataFromFile(fileName, &spreadsheet, mode);
24
25 QCOMPARE(spreadsheet.columnCount(), 5);
26 QCOMPARE(spreadsheet.rowCount(), 150);
27 QCOMPARE(spreadsheet.column(0)->columnMode(), AbstractColumn::ColumnMode::Double);
28 QCOMPARE(spreadsheet.column(1)->columnMode(), AbstractColumn::ColumnMode::Double);
29 QCOMPARE(spreadsheet.column(2)->columnMode(), AbstractColumn::ColumnMode::Double);
30 QCOMPARE(spreadsheet.column(3)->columnMode(), AbstractColumn::ColumnMode::Double);
31 QCOMPARE(spreadsheet.column(4)->columnMode(), AbstractColumn::ColumnMode::Text);
32
33 QCOMPARE(spreadsheet.column(0)->plotDesignation(), AbstractColumn::PlotDesignation::X);
34 QCOMPARE(spreadsheet.column(1)->plotDesignation(), AbstractColumn::PlotDesignation::Y);
35 QCOMPARE(spreadsheet.column(2)->plotDesignation(), AbstractColumn::PlotDesignation::Y);
36 QCOMPARE(spreadsheet.column(3)->plotDesignation(), AbstractColumn::PlotDesignation::Y);
37 QCOMPARE(spreadsheet.column(4)->plotDesignation(), AbstractColumn::PlotDesignation::Y);
38
39 QCOMPARE(spreadsheet.column(0)->name(), QLatin1String("sepallength"));
40 QCOMPARE(spreadsheet.column(1)->name(), QLatin1String("sepalwidth"));
41 QCOMPARE(spreadsheet.column(2)->name(), QLatin1String("petallength"));
42 QCOMPARE(spreadsheet.column(3)->name(), QLatin1String("petalwidth"));
43 QCOMPARE(spreadsheet.column(4)->name(), QLatin1String("species"));
44
45 FuzzyCompare(spreadsheet.column(0)->valueAt(0), 5.1, 1.e-6); // 5.09999990463
46 FuzzyCompare(spreadsheet.column(0)->valueAt(1), 4.9, 1.e-7); // 4.90000009537
47 FuzzyCompare(spreadsheet.column(0)->valueAt(2), 4.7, 1.e-7); // 4.69999980927
48
49 QCOMPARE(spreadsheet.column(1)->valueAt(0), 3.5);
50 FuzzyCompare(spreadsheet.column(2)->valueAt(0), 1.4, 1.e-7); // 1.39999997616
51 FuzzyCompare(spreadsheet.column(3)->valueAt(0), 0.2, 1.e-7); // 0.20000000298
52 QCOMPARE(spreadsheet.column(4)->textAt(0), QLatin1String("setosa"));
53
54 DEBUG(Q_FUNC_INFO << ", value = " << spreadsheet.column(0)->valueAt(149))
55 DEBUG(Q_FUNC_INFO << ", value = " << spreadsheet.column(2)->valueAt(149))
56 DEBUG(Q_FUNC_INFO << ", value = " << spreadsheet.column(3)->valueAt(149))
57
58 FuzzyCompare(spreadsheet.column(0)->valueAt(149), 5.9, 1.e-7); // 5.90000009536743
59 QCOMPARE(spreadsheet.column(1)->valueAt(149), 3.);
60 FuzzyCompare(spreadsheet.column(2)->valueAt(149), 5.1, 1.e-7); // 5.09999990463257
61 FuzzyCompare(spreadsheet.column(3)->valueAt(149), 1.8, 1.e-7); // 1.79999995231628
62 QCOMPARE(spreadsheet.column(4)->textAt(149), QLatin1String("virginica"));
63}
64
65void ReadStatFilterTest::testSASImport() {
66 Spreadsheet spreadsheet(QStringLiteral("test"), false);

Callers

nothing calls this directly

Calls 9

readDataFromFileMethod · 0.45
columnCountMethod · 0.45
rowCountMethod · 0.45
columnModeMethod · 0.45
columnMethod · 0.45
plotDesignationMethod · 0.45
nameMethod · 0.45
valueAtMethod · 0.45
textAtMethod · 0.45

Tested by

no test coverage detected