! * \brief AxisTest2::customTextLabelsMoreTicksThanLabels * Draw all ticks regardsless of their position, because we have only a few */
| 557 | * Draw all ticks regardsless of their position, because we have only a few |
| 558 | */ |
| 559 | void AxisTest2::customTextLabelsMoreTicksThanLabels() { |
| 560 | QLocale::setDefault(QLocale::C); // . as decimal separator |
| 561 | Project project; |
| 562 | auto* ws = new Worksheet(QStringLiteral("worksheet")); |
| 563 | QVERIFY(ws != nullptr); |
| 564 | project.addChild(ws); |
| 565 | |
| 566 | Spreadsheet* spreadsheetData = new Spreadsheet(QStringLiteral("data"), false); |
| 567 | spreadsheetData->setColumnCount(2); |
| 568 | spreadsheetData->setRowCount(3); |
| 569 | project.addChild(spreadsheetData); |
| 570 | |
| 571 | auto* xCol = spreadsheetData->column(0); |
| 572 | xCol->replaceValues(0, QVector<double>({3, 5, 10})); |
| 573 | |
| 574 | auto* yCol = spreadsheetData->column(1); |
| 575 | yCol->replaceValues(0, QVector<double>({3, 5, 10})); |
| 576 | |
| 577 | QCOMPARE(spreadsheetData->rowCount(), 3); |
| 578 | QCOMPARE(spreadsheetData->columnCount(), 2); |
| 579 | |
| 580 | Spreadsheet* spreadsheetLabels = new Spreadsheet(QStringLiteral("data"), false); |
| 581 | spreadsheetLabels->setColumnCount(2); |
| 582 | spreadsheetLabels->setRowCount(11); |
| 583 | project.addChild(spreadsheetLabels); |
| 584 | auto* valuesCol = spreadsheetLabels->column(0); |
| 585 | valuesCol->setColumnMode(AbstractColumn::ColumnMode::Double); |
| 586 | valuesCol->replaceValues(-1, QVector<double>({0., 1., 2., 3., 4., 7., 8., 9., 10.})); |
| 587 | VALUES_EQUAL(valuesCol->valueAt(1), 1.); |
| 588 | |
| 589 | auto* labelsCol = spreadsheetLabels->column(1); |
| 590 | labelsCol->setColumnMode(AbstractColumn::ColumnMode::Text); |
| 591 | labelsCol->replaceTexts(-1, |
| 592 | QVector<QString>({QStringLiteral("A"), |
| 593 | QStringLiteral("B"), |
| 594 | QStringLiteral("C"), |
| 595 | QStringLiteral("D"), |
| 596 | QStringLiteral("E"), |
| 597 | QStringLiteral("H"), |
| 598 | QStringLiteral("I"), |
| 599 | QStringLiteral("J"), |
| 600 | QStringLiteral("K")})); |
| 601 | |
| 602 | auto* p = new CartesianPlot(QStringLiteral("plot")); |
| 603 | p->setType(CartesianPlot::Type::TwoAxes); // Otherwise no axis are created |
| 604 | QVERIFY(p != nullptr); |
| 605 | ws->addChild(p); |
| 606 | |
| 607 | auto* curve = new XYCurve(QStringLiteral("xy-curve")); |
| 608 | curve->setXColumn(xCol); |
| 609 | curve->setYColumn(yCol); |
| 610 | p->addChild(curve); |
| 611 | |
| 612 | auto axes = p->children<Axis>(); |
| 613 | QCOMPARE(axes.count(), 2); |
| 614 | QCOMPARE(axes.at(0)->name(), QStringLiteral("x")); |
| 615 | QCOMPARE(axes.at(1)->name(), QStringLiteral("y")); |
| 616 |
nothing calls this directly
no test coverage detected