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

Method testFormulaAutoUpdateEnabledResize

tests/backend/Column/ColumnTest.cpp:694–722  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

692}
693
694void ColumnTest::testFormulaAutoUpdateEnabledResize() {
695 Column sourceColumn(QStringLiteral("source"), Column::ColumnMode::Integer);
696 sourceColumn.setIntegers({1, 2, 3, 4});
697
698 Column targetColumn(QStringLiteral("target"), Column::ColumnMode::Integer);
699 targetColumn.setIntegers({3, 2, 1});
700
701 // evaluatue 2*x and check the generated values in the target column
702 targetColumn.setColumnMode(AbstractColumn::ColumnMode::Double); // should happen automatically in Column::setFormula()
703 targetColumn.setFormula(QStringLiteral("2*x"),
704 QStringList{QStringLiteral("x")},
705 QVector<Column*>({&sourceColumn}),
706 true /* autoUpdate */,
707 false /* autoResize */);
708 targetColumn.updateFormula();
709 QCOMPARE(targetColumn.rowCount(), 3);
710 QCOMPARE(targetColumn.valueAt(0), 2);
711 QCOMPARE(targetColumn.valueAt(1), 4);
712 QCOMPARE(targetColumn.valueAt(2), 6);
713
714 targetColumn.insertRows(3, 1); // Rowcount of the target changes
715
716 // Values updated
717 QCOMPARE(targetColumn.rowCount(), 4);
718 QCOMPARE(targetColumn.valueAt(0), 2);
719 QCOMPARE(targetColumn.valueAt(1), 4);
720 QCOMPARE(targetColumn.valueAt(2), 6);
721 QCOMPARE(targetColumn.valueAt(3), 8);
722}
723
724void ColumnTest::testDictionaryIndex() {
725 Column c(QStringLiteral("Text column"), Column::ColumnMode::Text);

Callers

nothing calls this directly

Calls 7

setIntegersMethod · 0.80
setColumnModeMethod · 0.45
setFormulaMethod · 0.45
updateFormulaMethod · 0.45
rowCountMethod · 0.45
valueAtMethod · 0.45
insertRowsMethod · 0.45

Tested by

no test coverage detected