69
69
void SheetTest::testRemoveRows_data()
71
QTest::addColumn<int>("col");
72
QTest::addColumn<int>("row");
71
73
QTest::addColumn<QString>("formula");
72
74
QTest::addColumn<int>("rowToRemove");
75
QTest::addColumn<int>("numRows");
73
76
QTest::addColumn<QString>("result");
75
QTest::newRow("exact row") << "=C4" << 4 << "=#Dependency!";
76
QTest::newRow("earlier row") << "=C4" << 3 << "=C3";
77
QTest::newRow("later row") << "=C4" << 5 << "=C4";
79
QTest::newRow("range before start") << "=SUM(C4:C7)" << 3 << "=SUM(C3:C6)";
80
QTest::newRow("range start row") << "=SUM(C4:C7)" << 4 << "=SUM(C4:C6)";
81
QTest::newRow("range middle row") << "=SUM(C4:C7)" << 5 << "=SUM(C4:C6)";
82
QTest::newRow("range end row") << "=SUM(C4:C7)" << 7 << "=SUM(C4:C6)";
83
QTest::newRow("range after end") << "=SUM(C4:C7)" << 8 << "=SUM(C4:C7)";
84
QTest::newRow("entire range") << "=SUM(C4:C4)" << 4 << "=SUM(#Dependency!:#Dependency!)";
86
QTest::newRow("2d range before start") << "=SUM(C4:E7)" << 3 << "=SUM(C3:E6)";
87
QTest::newRow("2d range start row") << "=SUM(C4:E7)" << 4 << "=SUM(C4:E6)";
88
QTest::newRow("2d range middle row") << "=SUM(C4:E7)" << 5 << "=SUM(C4:E6)";
89
QTest::newRow("2d range end row") << "=SUM(C4:E7)" << 7 << "=SUM(C4:E6)";
90
QTest::newRow("2d range after end") << "=SUM(C4:E7)" << 8 << "=SUM(C4:E7)";
78
QTest::newRow("exact row") << 1 << 1 << "=C4" << 4 << 1 << "=#Dependency!";
79
QTest::newRow("earlier row") << 1 << 1 << "=C4" << 3 << 1 << "=C3";
80
QTest::newRow("later row") << 1 << 1 << "=C4" << 5 << 1 << "=C4";
82
QTest::newRow("range before start") << 1 << 1 << "=SUM(C4:C7)" << 3 << 1 << "=SUM(C3:C6)";
83
QTest::newRow("range start row") << 1 << 1 << "=SUM(C4:C7)" << 4 << 1 << "=SUM(C4:C6)";
84
QTest::newRow("range middle row") << 1 << 1 << "=SUM(C4:C7)" << 5 << 1 << "=SUM(C4:C6)";
85
QTest::newRow("range end row") << 1 << 1 << "=SUM(C4:C7)" << 7 << 1 << "=SUM(C4:C6)";
86
QTest::newRow("range after end") << 1 << 1 << "=SUM(C4:C7)" << 8 << 1 << "=SUM(C4:C7)";
87
QTest::newRow("entire range") << 1 << 1 << "=SUM(C4:C4)" << 4 << 1 << "=SUM(#Dependency!:#Dependency!)";
89
QTest::newRow("2d range before start") << 1 << 1 << "=SUM(C4:E7)" << 3 << 1 << "=SUM(C3:E6)";
90
QTest::newRow("2d range start row") << 1 << 1 << "=SUM(C4:E7)" << 4 << 1 << "=SUM(C4:E6)";
91
QTest::newRow("2d range middle row") << 1 << 1 << "=SUM(C4:E7)" << 5 << 1 << "=SUM(C4:E6)";
92
QTest::newRow("2d range end row") << 1 << 1 << "=SUM(C4:E7)" << 7 << 1 << "=SUM(C4:E6)";
93
QTest::newRow("2d range after end") << 1 << 1 << "=SUM(C4:E7)" << 8 << 1 << "=SUM(C4:E7)";
95
QTest::newRow("refer to last deleted row") << 1 << 1 << "=A4" << 2 << 3 << "=#Dependency!";
96
QTest::newRow("refer to first not deleted row") << 1 << 1 << "=A4" << 2 << 2 << "=A2";
99
QTest::newRow("bug313056_1") << 4 << 5 << "=A1" << 3 << 2 << "=A1";
100
QTest::newRow("bug313056_2") << 2 << 32 << "=E9" << 5 << 26 << "=#Dependency!";
93
103
void SheetTest::testRemoveRows()
95
107
QFETCH(QString, formula);
96
108
QFETCH(int, rowToRemove);
109
QFETCH(int, numRows);
97
110
QFETCH(QString, result);
99
Cell cell(m_sheet, 1, 1);
112
Cell cell(m_sheet, col, row);
100
113
cell.setUserInput(formula);
101
m_sheet->removeRows(rowToRemove, 1);
114
m_sheet->removeRows(rowToRemove, numRows);
103
116
QCOMPARE(cell.userInput(), result);