! * import objects with an additional column for the object names * with custom start and end columns */
| 168 | * with custom start and end columns |
| 169 | */ |
| 170 | void JSONFilterTest::testObjectImport03() { |
| 171 | Spreadsheet spreadsheet(QStringLiteral("test"), false); |
| 172 | JsonFilter filter; |
| 173 | |
| 174 | const QString& fileName = QFINDTESTDATA(QLatin1String("data/object.json")); |
| 175 | AbstractFileFilter::ImportMode mode = AbstractFileFilter::ImportMode::Replace; |
| 176 | filter.setDataRowType(QJsonValue::Object); |
| 177 | filter.setImportObjectNames(true); |
| 178 | filter.setStartColumn(2); |
| 179 | filter.setEndColumn(3); |
| 180 | filter.readDataFromFile(fileName, &spreadsheet, mode); |
| 181 | |
| 182 | QCOMPARE(spreadsheet.columnCount(), 3); |
| 183 | QCOMPARE(spreadsheet.rowCount(), 3); |
| 184 | QCOMPARE(spreadsheet.column(0)->columnMode(), AbstractColumn::ColumnMode::Text); |
| 185 | QCOMPARE(spreadsheet.column(1)->columnMode(), AbstractColumn::ColumnMode::Double); |
| 186 | QCOMPARE(spreadsheet.column(2)->columnMode(), AbstractColumn::ColumnMode::Double); |
| 187 | |
| 188 | QCOMPARE(spreadsheet.column(0)->plotDesignation(), AbstractColumn::PlotDesignation::X); |
| 189 | QCOMPARE(spreadsheet.column(1)->plotDesignation(), AbstractColumn::PlotDesignation::Y); |
| 190 | QCOMPARE(spreadsheet.column(2)->plotDesignation(), AbstractColumn::PlotDesignation::Y); |
| 191 | |
| 192 | QCOMPARE(spreadsheet.column(0)->name(), i18n("name")); |
| 193 | QCOMPARE(spreadsheet.column(1)->name(), QLatin1String("2")); |
| 194 | QCOMPARE(spreadsheet.column(2)->name(), QLatin1String("3")); |
| 195 | |
| 196 | QCOMPARE(spreadsheet.column(0)->textAt(0), QStringLiteral("field1")); |
| 197 | QCOMPARE(spreadsheet.column(0)->textAt(1), QStringLiteral("field2")); |
| 198 | QCOMPARE(spreadsheet.column(0)->textAt(2), QStringLiteral("field3")); |
| 199 | |
| 200 | QCOMPARE(spreadsheet.column(1)->valueAt(0), 2.345); |
| 201 | QCOMPARE(spreadsheet.column(1)->valueAt(1), 222.); |
| 202 | QCOMPARE(spreadsheet.column(1)->valueAt(2), 0.002); |
| 203 | |
| 204 | QCOMPARE(spreadsheet.column(2)->valueAt(0), 3.456); |
| 205 | QCOMPARE(spreadsheet.column(2)->valueAt(1), 333.); |
| 206 | QCOMPARE(spreadsheet.column(2)->valueAt(2), 0.003); |
| 207 | } |
| 208 | |
| 209 | /*! |
| 210 | * import objects with an additional datetime column for the object names |
nothing calls this directly
no test coverage detected