Line data Source code
1 : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /*
3 : * This file is part of the LibreOffice project.
4 : *
5 : * This Source Code Form is subject to the terms of the Mozilla Public
6 : * License, v. 2.0. If a copy of the MPL was not distributed with this
7 : * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 : */
9 :
10 : #ifndef INCLUDED_SC_QA_UNIT_UCALC_HXX
11 : #define INCLUDED_SC_QA_UNIT_UCALC_HXX
12 :
13 : #include "helper/qahelper.hxx"
14 : #include "document.hxx"
15 : #include <stringutil.hxx>
16 :
17 : struct TestImpl;
18 : class ScUndoPaste;
19 :
20 : /**
21 : * Temporarily set formula grammar.
22 : */
23 : class FormulaGrammarSwitch
24 : {
25 : ScDocument* mpDoc;
26 : formula::FormulaGrammar::Grammar meOldGrammar;
27 : public:
28 : FormulaGrammarSwitch(ScDocument* pDoc, formula::FormulaGrammar::Grammar eGrammar);
29 : ~FormulaGrammarSwitch();
30 : };
31 :
32 : class Test : public test::BootstrapFixture
33 : {
34 : public:
35 : struct RangeNameDef
36 : {
37 : const char* mpName;
38 : const char* mpExpr;
39 : sal_uInt16 mnIndex;
40 : };
41 :
42 : static ScDocShell* findLoadedDocShellByName(const OUString& rName);
43 : static bool insertRangeNames(ScDocument* pDoc, ScRangeName* pNames, const RangeNameDef* p, const RangeNameDef* pEnd);
44 : static void printRange(ScDocument* pDoc, const ScRange& rRange, const char* pCaption);
45 : static void clearRange(ScDocument* pDoc, const ScRange& rRange);
46 : static void clearSheet(ScDocument* pDoc, SCTAB nTab);
47 : static void copyToClip(ScDocument* pSrcDoc, const ScRange& rRange, ScDocument* pClipDoc);
48 : static void pasteFromClip(ScDocument* pDestDoc, const ScRange& rDestRange, ScDocument* pClipDoc);
49 : static ScUndoPaste* createUndoPaste(ScDocShell& rDocSh, const ScRange& rRange, ScDocument* pUndoDoc);
50 :
51 : /**
52 : * Enable or disable expand reference options which controls how
53 : * references in formula are expanded when inserting rows or columns.
54 : */
55 : static void setExpandRefs(bool bExpand);
56 :
57 : static void setCalcAsShown(ScDocument* pDoc, bool bCalcAsShown);
58 :
59 :
60 : template<size_t _Size>
61 52 : static ScRange insertRangeData(
62 : ScDocument* pDoc, const ScAddress& rPos, const char* aData[][_Size], size_t nRowCount )
63 : {
64 52 : ScRange aRange(rPos);
65 52 : aRange.aEnd.SetCol(rPos.Col()+_Size-1);
66 52 : aRange.aEnd.SetRow(rPos.Row()+nRowCount-1);
67 :
68 52 : clearRange(pDoc, aRange);
69 :
70 183 : for (size_t i = 0; i < _Size; ++i)
71 : {
72 879 : for (size_t j = 0; j < nRowCount; ++j)
73 : {
74 805 : if (!aData[j][i])
75 57 : continue;
76 :
77 748 : SCCOL nCol = i + rPos.Col();
78 748 : SCROW nRow = j + rPos.Row();
79 748 : OUString aStr(aData[j][i], strlen(aData[j][i]), RTL_TEXTENCODING_UTF8);
80 :
81 748 : ScSetStringParam aParam; // Leave default.
82 748 : aParam.meStartListening = sc::NoListening;
83 748 : pDoc->SetString(nCol, nRow, rPos.Tab(), aStr, &aParam);
84 : }
85 : }
86 :
87 52 : pDoc->StartAllListeners(aRange);
88 :
89 52 : printRange(pDoc, aRange, "Range data content");
90 52 : return aRange;
91 : }
92 :
93 : Test();
94 : virtual ~Test();
95 :
96 : ScDocShell& getDocShell();
97 :
98 : virtual void setUp() SAL_OVERRIDE;
99 : virtual void tearDown() SAL_OVERRIDE;
100 :
101 : /**
102 : * Basic performance regression test. Pick some actions that *should* take
103 : * only a fraction of a second to complete, and make sure they stay that
104 : * way. We set the threshold to 1 second for each action which should be
105 : * large enough to accommodate slower machines or machines with high load.
106 : */
107 : void testPerf();
108 : void testCollator();
109 : void testSharedStringPool();
110 : void testSharedStringPoolUndoDoc();
111 : void testRangeList();
112 : void testMarkData();
113 : void testInput();
114 : void testDocStatistics();
115 :
116 : /**
117 : * The 'data entries' data is a list of strings used for suggestions as
118 : * the user types in new cell value.
119 : */
120 : void testDataEntries();
121 :
122 : /**
123 : * Selection function is responsible for displaying quick calculation
124 : * results in the status bar.
125 : */
126 : void testSelectionFunction();
127 :
128 : void testFormulaCreateStringFromTokens();
129 : void testFormulaParseReference();
130 : void testFetchVectorRefArray();
131 : void testFormulaHashAndTag();
132 : void testFormulaTokenEquality();
133 : void testFormulaRefData();
134 : void testFormulaCompiler();
135 : void testFormulaCompilerJumpReordering();
136 : void testFormulaRefUpdate();
137 : void testFormulaRefUpdateRange();
138 : void testFormulaRefUpdateSheets();
139 : void testFormulaRefUpdateSheetsDelete();
140 : void testFormulaRefUpdateInsertRows();
141 : void testFormulaRefUpdateInsertColumns();
142 : void testFormulaRefUpdateMove();
143 : void testFormulaRefUpdateMoveUndo();
144 : void testFormulaRefUpdateMoveToSheet();
145 : void testFormulaRefUpdateDeleteContent();
146 : void testFormulaRefUpdateDeleteAndShiftLeft();
147 : void testFormulaRefUpdateDeleteAndShiftUp();
148 : void testFormulaRefUpdateName();
149 : void testFormulaRefUpdateNameMove();
150 : void testFormulaRefUpdateNameExpandRef();
151 : void testFormulaRefUpdateNameDeleteRow();
152 : void testFormulaRefUpdateNameCopySheet();
153 : void testFormulaRefUpdateNameDelete();
154 : void testFormulaRefUpdateValidity();
155 : void testMultipleOperations();
156 : void testFuncCOLUMN();
157 : void testFuncCOUNT();
158 : void testFuncCOUNTBLANK();
159 : void testFuncROW();
160 : void testFuncSUM();
161 : void testFuncPRODUCT();
162 : void testFuncSUMPRODUCT();
163 : void testFuncMIN();
164 : void testFuncN();
165 : void testFuncCOUNTIF();
166 : void testFuncNUMBERVALUE();
167 : void testFuncLEN();
168 : void testFuncLOOKUP();
169 : void testFuncVLOOKUP();
170 : void testFuncMATCH();
171 : void testFuncCELL();
172 : void testFuncDATEDIF();
173 : void testFuncINDIRECT();
174 : void testFuncIF();
175 : void testFuncCHOOSE();
176 : void testFuncIFERROR();
177 : void testFuncSHEET();
178 : void testFuncNOW();
179 : void testFuncGETPIVOTDATA();
180 : void testFuncGETPIVOTDATALeafAccess();
181 : void testMatrixOp();
182 :
183 : void testExternalRef();
184 : void testExternalRefFunctions();
185 :
186 : void testCopyToDocument();
187 :
188 : void testHorizontalIterator();
189 : void testValueIterator();
190 : void testHorizontalAttrIterator();
191 :
192 : /**
193 : * Basic test for formula dependency tracking.
194 : */
195 : void testFormulaDepTracking();
196 :
197 : /**
198 : * Another test for formula dependency tracking, inspired by fdo#56278.
199 : */
200 : void testFormulaDepTracking2();
201 :
202 : void testFormulaDepTracking3();
203 :
204 : void testFormulaDepTrackingDeleteRow();
205 :
206 : void testFormulaDepTrackingDeleteCol();
207 :
208 : void testFormulaMatrixResultUpdate();
209 :
210 : /**
211 : * More direct test for cell broadcaster management, used to track formula
212 : * dependencies.
213 : */
214 : void testCellBroadcaster();
215 :
216 : void testFuncParam();
217 : void testNamedRange();
218 : void testInsertNameList();
219 : void testCSV();
220 : void testMatrix();
221 : void testMatrixComparisonWithErrors();
222 : void testEnterMixedMatrix();
223 : void testMatrixEditable();
224 :
225 : /**
226 : * Basic test for pivot tables.
227 : */
228 : void testPivotTable();
229 :
230 : /**
231 : * Test against unwanted automatic format detection on field names and
232 : * field members in pivot tables.
233 : */
234 : void testPivotTableLabels();
235 :
236 : /**
237 : * Make sure that we set cells displaying date values numeric cells,
238 : * rather than text cells. Grouping by date or number functionality
239 : * depends on this.
240 : */
241 : void testPivotTableDateLabels();
242 :
243 : /**
244 : * Test for pivot table's filtering functionality by page fields.
245 : */
246 : void testPivotTableFilters();
247 :
248 : /**
249 : * Test for pivot table's named source range.
250 : */
251 : void testPivotTableNamedSource();
252 :
253 : /**
254 : * Test for pivot table cache. Each dimension in the pivot cache stores
255 : * only unique values that are sorted in ascending order.
256 : */
257 : void testPivotTableCache();
258 :
259 : /**
260 : * Test for pivot table containing data fields that reference the same
261 : * source field but different functions.
262 : */
263 : void testPivotTableDuplicateDataFields();
264 :
265 : void testPivotTableNormalGrouping();
266 : void testPivotTableNumberGrouping();
267 : void testPivotTableDateGrouping();
268 : void testPivotTableEmptyRows();
269 : void testPivotTableTextNumber();
270 :
271 : /**
272 : * Test for checking that pivot table treats strings in a case insensitive
273 : * manner.
274 : */
275 : void testPivotTableCaseInsensitiveStrings();
276 :
277 : /**
278 : * Test for pivot table's handling of double-precision numbers that are
279 : * very close together.
280 : */
281 : void testPivotTableNumStability();
282 :
283 : /**
284 : * Test for pivot table that include field with various non-default field
285 : * references.
286 : */
287 : void testPivotTableFieldReference();
288 :
289 : /**
290 : * Test pivot table functionality performed via ScDBDocFunc.
291 : */
292 : void testPivotTableDocFunc();
293 :
294 : /**
295 : * Test pivot table per-field repeat item labels functionality
296 : */
297 : void testPivotTableRepeatItemLabels();
298 :
299 : void testCellCopy();
300 : void testSheetCopy();
301 : void testSheetMove();
302 : void testDataArea();
303 : void testAutofilter();
304 : void testCopyPaste();
305 : void testCopyPasteAsLink();
306 : void testCopyPasteTranspose();
307 : void testCopyPasteMultiRange();
308 : void testCopyPasteSkipEmpty();
309 : void testCopyPasteSkipEmpty2();
310 : void testCopyPasteSkipEmptyConditionalFormatting();
311 : void testCutPasteRefUndo();
312 : void testMoveRefBetweenSheets();
313 : void testUndoCut();
314 : void testMoveBlock();
315 : void testCopyPasteRelativeFormula();
316 : void testCopyPasteRepeatOneFormula();
317 : void testMergedCells();
318 : void testUpdateReference();
319 : void testSearchCells();
320 : void testSharedFormulas();
321 : void testSharedFormulasRefUpdate();
322 : void testSharedFormulasRefUpdateMove();
323 : void testSharedFormulasRefUpdateMove2();
324 : void testSharedFormulasRefUpdateRange();
325 : void testSharedFormulasRefUpdateRangeDeleteRow();
326 : void testSharedFormulasRefUpdateExternal();
327 : void testSharedFormulasInsertRow();
328 : void testSharedFormulasDeleteRows();
329 : void testSharedFormulasDeleteColumns();
330 : void testSharedFormulasRefUpdateMoveSheets();
331 : void testSharedFormulasRefUpdateCopySheets();
332 : void testSharedFormulasRefUpdateDeleteSheets();
333 : void testSharedFormulasCopyPaste();
334 : void testSharedFormulaInsertColumn();
335 : void testSharedFormulaMoveBlock();
336 : void testSharedFormulaUpdateOnNamedRangeChange();
337 : void testSharedFormulaUpdateOnDBChange();
338 : void testSharedFormulaAbsCellListener();
339 : void testSharedFormulaUnshareAreaListeners();
340 : void testFormulaPosition();
341 :
342 : void testMixData();
343 :
344 : /**
345 : * Make sure the sheet streams are invalidated properly.
346 : */
347 : void testStreamValid();
348 :
349 : /**
350 : * Test built-in cell functions to make sure their categories and order
351 : * are correct.
352 : */
353 : void testFunctionLists();
354 :
355 : void testGraphicsInGroup();
356 : void testGraphicsOnSheetMove();
357 :
358 : /**
359 : * Test toggling relative/absolute flag of cell and cell range references.
360 : * This corresponds with hitting Shift-F4 while the cursor is on a formula
361 : * cell.
362 : */
363 : void testToggleRefFlag();
364 :
365 : /**
366 : * Test to make sure correct precedent / dependent cells are obtained when
367 : * preparing to jump to them.
368 : */
369 : void testJumpToPrecedentsDependents();
370 :
371 : void testSetBackgroundColor();
372 : void testRenameTable();
373 :
374 : void testAutoFill();
375 : void testAutoFillSimple();
376 : void testCopyPasteFormulas();
377 : void testCopyPasteFormulasExternalDoc();
378 :
379 : void testFindAreaPosVertical();
380 : void testFindAreaPosColRight();
381 : void testShiftCells();
382 :
383 : void testSort();
384 : void testSortHorizontal();
385 : void testSortHorizontalWholeColumn();
386 : void testSortSingleRow();
387 : void testSortWithFormulaRefs();
388 : void testSortWithStrings();
389 : void testSortInFormulaGroup();
390 : void testSortWithCellFormats();
391 : void testSortRefUpdate();
392 : void testSortRefUpdate2();
393 : void testSortRefUpdate3();
394 : void testSortRefUpdate4();
395 : void testSortRefUpdate4_Impl();
396 : void testSortRefUpdate5();
397 : void testSortRefUpdate6();
398 : void testSortBroadcaster();
399 : void testSortOutOfPlaceResult();
400 : void testSortPartialFormulaGroup();
401 :
402 : void testNoteBasic();
403 : void testNoteDeleteRow();
404 : void testNoteDeleteCol();
405 : void testNoteLifeCycle();
406 : void testNoteCopyPaste();
407 : void testAreasWithNotes();
408 : void testAnchoredRotatedShape();
409 : void testCellTextWidth();
410 : void testEditTextIterator();
411 :
412 : void testCondFormatINSDEL();
413 : void testCondFormatInsertRow();
414 : void testCondFormatInsertCol();
415 : void testCondFormatInsertDeleteSheets();
416 : void testCondCopyPaste();
417 : void testCondCopyPasteSingleCell(); //e.g. fdo#82503
418 : void testCondCopyPasteSingleCellToRange(); //e.g. fdo#82503
419 : void testCondCopyPasteSheetBetweenDoc();
420 : void testCondCopyPasteSheet();
421 : void testIconSet();
422 : void testDataBarLengthAutomaticAxis();
423 : void testDataBarLengthMiddleAxis();
424 :
425 : void testImportStream();
426 : void testDeleteContents();
427 : void testTransliterateText();
428 :
429 : void testFormulaToValue();
430 : void testFormulaToValue2();
431 :
432 : void testColumnFindEditCells();
433 : void testSetStringAndNote();
434 :
435 : // tdf#80137
436 : void testCopyPasteMatrixFormula();
437 : void testUndoDataAnchor();
438 :
439 2 : CPPUNIT_TEST_SUITE(Test);
440 : #if CALC_TEST_PERF
441 : CPPUNIT_TEST(testPerf);
442 : #endif
443 1 : CPPUNIT_TEST(testCollator);
444 1 : CPPUNIT_TEST(testSharedStringPool);
445 1 : CPPUNIT_TEST(testSharedStringPoolUndoDoc);
446 1 : CPPUNIT_TEST(testRangeList);
447 1 : CPPUNIT_TEST(testMarkData);
448 1 : CPPUNIT_TEST(testInput);
449 1 : CPPUNIT_TEST(testDocStatistics);
450 1 : CPPUNIT_TEST(testDataEntries);
451 1 : CPPUNIT_TEST(testSelectionFunction);
452 1 : CPPUNIT_TEST(testFormulaCreateStringFromTokens);
453 1 : CPPUNIT_TEST(testFormulaParseReference);
454 1 : CPPUNIT_TEST(testFetchVectorRefArray);
455 1 : CPPUNIT_TEST(testFormulaHashAndTag);
456 1 : CPPUNIT_TEST(testFormulaTokenEquality);
457 1 : CPPUNIT_TEST(testFormulaRefData);
458 1 : CPPUNIT_TEST(testFormulaCompiler);
459 1 : CPPUNIT_TEST(testFormulaCompilerJumpReordering);
460 1 : CPPUNIT_TEST(testFormulaRefUpdate);
461 1 : CPPUNIT_TEST(testFormulaRefUpdateRange);
462 1 : CPPUNIT_TEST(testFormulaRefUpdateSheets);
463 1 : CPPUNIT_TEST(testFormulaRefUpdateSheetsDelete);
464 1 : CPPUNIT_TEST(testFormulaRefUpdateInsertRows);
465 1 : CPPUNIT_TEST(testFormulaRefUpdateInsertColumns);
466 1 : CPPUNIT_TEST(testFormulaRefUpdateMove);
467 1 : CPPUNIT_TEST(testFormulaRefUpdateMoveUndo);
468 1 : CPPUNIT_TEST(testFormulaRefUpdateMoveToSheet);
469 1 : CPPUNIT_TEST(testFormulaRefUpdateDeleteContent);
470 1 : CPPUNIT_TEST(testFormulaRefUpdateDeleteAndShiftLeft);
471 1 : CPPUNIT_TEST(testFormulaRefUpdateDeleteAndShiftUp);
472 1 : CPPUNIT_TEST(testFormulaRefUpdateName);
473 1 : CPPUNIT_TEST(testFormulaRefUpdateNameMove);
474 1 : CPPUNIT_TEST(testFormulaRefUpdateNameExpandRef);
475 1 : CPPUNIT_TEST(testFormulaRefUpdateNameDeleteRow);
476 1 : CPPUNIT_TEST(testFormulaRefUpdateNameCopySheet);
477 1 : CPPUNIT_TEST(testFormulaRefUpdateNameDelete);
478 1 : CPPUNIT_TEST(testFormulaRefUpdateValidity);
479 1 : CPPUNIT_TEST(testMultipleOperations);
480 1 : CPPUNIT_TEST(testFuncCOLUMN);
481 1 : CPPUNIT_TEST(testFuncCOUNT);
482 1 : CPPUNIT_TEST(testFuncCOUNTBLANK);
483 1 : CPPUNIT_TEST(testFuncROW);
484 1 : CPPUNIT_TEST(testFuncSUM);
485 1 : CPPUNIT_TEST(testFuncPRODUCT);
486 1 : CPPUNIT_TEST(testFuncSUMPRODUCT);
487 1 : CPPUNIT_TEST(testFuncMIN);
488 1 : CPPUNIT_TEST(testFuncN);
489 1 : CPPUNIT_TEST(testFuncCOUNTIF);
490 1 : CPPUNIT_TEST(testFuncNUMBERVALUE);
491 1 : CPPUNIT_TEST(testFuncLEN);
492 1 : CPPUNIT_TEST(testFuncLOOKUP);
493 1 : CPPUNIT_TEST(testFuncVLOOKUP);
494 1 : CPPUNIT_TEST(testFuncMATCH);
495 1 : CPPUNIT_TEST(testFuncCELL);
496 1 : CPPUNIT_TEST(testFuncDATEDIF);
497 1 : CPPUNIT_TEST(testFuncINDIRECT);
498 1 : CPPUNIT_TEST(testFuncIF);
499 1 : CPPUNIT_TEST(testFuncCHOOSE);
500 1 : CPPUNIT_TEST(testFuncIFERROR);
501 1 : CPPUNIT_TEST(testFuncGETPIVOTDATA);
502 1 : CPPUNIT_TEST(testFuncGETPIVOTDATALeafAccess);
503 1 : CPPUNIT_TEST(testMatrixOp);
504 1 : CPPUNIT_TEST(testExternalRef);
505 1 : CPPUNIT_TEST(testExternalRefFunctions);
506 1 : CPPUNIT_TEST(testCopyToDocument);
507 1 : CPPUNIT_TEST(testFuncSHEET);
508 1 : CPPUNIT_TEST(testFuncNOW);
509 1 : CPPUNIT_TEST(testHorizontalIterator);
510 1 : CPPUNIT_TEST(testValueIterator);
511 1 : CPPUNIT_TEST(testHorizontalAttrIterator);
512 1 : CPPUNIT_TEST(testFormulaDepTracking);
513 1 : CPPUNIT_TEST(testFormulaDepTracking2);
514 1 : CPPUNIT_TEST(testFormulaDepTracking3);
515 1 : CPPUNIT_TEST(testFormulaDepTrackingDeleteRow);
516 1 : CPPUNIT_TEST(testFormulaDepTrackingDeleteCol);
517 1 : CPPUNIT_TEST(testFormulaMatrixResultUpdate);
518 1 : CPPUNIT_TEST(testCellBroadcaster);
519 1 : CPPUNIT_TEST(testFuncParam);
520 1 : CPPUNIT_TEST(testNamedRange);
521 1 : CPPUNIT_TEST(testInsertNameList);
522 1 : CPPUNIT_TEST(testCSV);
523 1 : CPPUNIT_TEST(testMatrix);
524 1 : CPPUNIT_TEST(testMatrixComparisonWithErrors);
525 1 : CPPUNIT_TEST(testEnterMixedMatrix);
526 1 : CPPUNIT_TEST(testMatrixEditable);
527 1 : CPPUNIT_TEST(testPivotTable);
528 1 : CPPUNIT_TEST(testPivotTableLabels);
529 1 : CPPUNIT_TEST(testPivotTableDateLabels);
530 1 : CPPUNIT_TEST(testPivotTableFilters);
531 1 : CPPUNIT_TEST(testPivotTableNamedSource);
532 1 : CPPUNIT_TEST(testPivotTableCache);
533 1 : CPPUNIT_TEST(testPivotTableDuplicateDataFields);
534 1 : CPPUNIT_TEST(testPivotTableNormalGrouping);
535 1 : CPPUNIT_TEST(testPivotTableNumberGrouping);
536 1 : CPPUNIT_TEST(testPivotTableDateGrouping);
537 1 : CPPUNIT_TEST(testPivotTableEmptyRows);
538 1 : CPPUNIT_TEST(testPivotTableTextNumber);
539 1 : CPPUNIT_TEST(testPivotTableCaseInsensitiveStrings);
540 1 : CPPUNIT_TEST(testPivotTableNumStability);
541 1 : CPPUNIT_TEST(testPivotTableFieldReference);
542 1 : CPPUNIT_TEST(testPivotTableDocFunc);
543 1 : CPPUNIT_TEST(testPivotTableRepeatItemLabels);
544 1 : CPPUNIT_TEST(testCellCopy);
545 1 : CPPUNIT_TEST(testSheetCopy);
546 1 : CPPUNIT_TEST(testSheetMove);
547 1 : CPPUNIT_TEST(testDataArea);
548 1 : CPPUNIT_TEST(testGraphicsInGroup);
549 1 : CPPUNIT_TEST(testGraphicsOnSheetMove);
550 1 : CPPUNIT_TEST(testStreamValid);
551 1 : CPPUNIT_TEST(testFunctionLists);
552 1 : CPPUNIT_TEST(testToggleRefFlag);
553 1 : CPPUNIT_TEST(testAutofilter);
554 1 : CPPUNIT_TEST(testCopyPaste);
555 1 : CPPUNIT_TEST(testCopyPasteAsLink);
556 1 : CPPUNIT_TEST(testCopyPasteTranspose);
557 1 : CPPUNIT_TEST(testCopyPasteMultiRange);
558 1 : CPPUNIT_TEST(testCopyPasteSkipEmpty);
559 1 : CPPUNIT_TEST(testCopyPasteSkipEmpty2);
560 : //CPPUNIT_TEST(testCopyPasteSkipEmptyConditionalFormatting);
561 1 : CPPUNIT_TEST(testCutPasteRefUndo);
562 1 : CPPUNIT_TEST(testMoveRefBetweenSheets);
563 1 : CPPUNIT_TEST(testUndoCut);
564 1 : CPPUNIT_TEST(testMoveBlock);
565 1 : CPPUNIT_TEST(testCopyPasteRelativeFormula);
566 1 : CPPUNIT_TEST(testCopyPasteRepeatOneFormula);
567 1 : CPPUNIT_TEST(testMergedCells);
568 1 : CPPUNIT_TEST(testUpdateReference);
569 1 : CPPUNIT_TEST(testSearchCells);
570 1 : CPPUNIT_TEST(testSharedFormulas);
571 1 : CPPUNIT_TEST(testSharedFormulasRefUpdate);
572 1 : CPPUNIT_TEST(testSharedFormulasRefUpdateMove);
573 1 : CPPUNIT_TEST(testSharedFormulasRefUpdateMove2);
574 1 : CPPUNIT_TEST(testSharedFormulasRefUpdateRange);
575 1 : CPPUNIT_TEST(testSharedFormulasRefUpdateRangeDeleteRow);
576 1 : CPPUNIT_TEST(testSharedFormulasRefUpdateExternal);
577 1 : CPPUNIT_TEST(testSharedFormulasInsertRow);
578 1 : CPPUNIT_TEST(testSharedFormulasDeleteRows);
579 1 : CPPUNIT_TEST(testSharedFormulasDeleteColumns);
580 1 : CPPUNIT_TEST(testSharedFormulasRefUpdateMoveSheets);
581 1 : CPPUNIT_TEST(testSharedFormulasRefUpdateCopySheets);
582 1 : CPPUNIT_TEST(testSharedFormulasRefUpdateDeleteSheets);
583 1 : CPPUNIT_TEST(testSharedFormulasCopyPaste);
584 1 : CPPUNIT_TEST(testSharedFormulaInsertColumn);
585 1 : CPPUNIT_TEST(testSharedFormulaUpdateOnNamedRangeChange);
586 1 : CPPUNIT_TEST(testSharedFormulaUpdateOnDBChange);
587 1 : CPPUNIT_TEST(testSharedFormulaAbsCellListener);
588 1 : CPPUNIT_TEST(testSharedFormulaUnshareAreaListeners);
589 1 : CPPUNIT_TEST(testFormulaPosition);
590 1 : CPPUNIT_TEST(testMixData);
591 1 : CPPUNIT_TEST(testJumpToPrecedentsDependents);
592 1 : CPPUNIT_TEST(testSetBackgroundColor);
593 1 : CPPUNIT_TEST(testRenameTable);
594 1 : CPPUNIT_TEST(testAutoFill);
595 1 : CPPUNIT_TEST(testAutoFillSimple);
596 1 : CPPUNIT_TEST(testCopyPasteFormulas);
597 1 : CPPUNIT_TEST(testCopyPasteFormulasExternalDoc);
598 1 : CPPUNIT_TEST(testFindAreaPosVertical);
599 1 : CPPUNIT_TEST(testFindAreaPosColRight);
600 1 : CPPUNIT_TEST(testSort);
601 1 : CPPUNIT_TEST(testSortHorizontal);
602 1 : CPPUNIT_TEST(testSortHorizontalWholeColumn);
603 1 : CPPUNIT_TEST(testSortSingleRow);
604 1 : CPPUNIT_TEST(testSortWithFormulaRefs);
605 1 : CPPUNIT_TEST(testSortWithStrings);
606 1 : CPPUNIT_TEST(testSortInFormulaGroup);
607 1 : CPPUNIT_TEST(testSortWithCellFormats);
608 1 : CPPUNIT_TEST(testSortRefUpdate);
609 1 : CPPUNIT_TEST(testSortRefUpdate2);
610 1 : CPPUNIT_TEST(testSortRefUpdate3);
611 1 : CPPUNIT_TEST(testSortRefUpdate4);
612 1 : CPPUNIT_TEST(testSortRefUpdate5);
613 1 : CPPUNIT_TEST(testSortRefUpdate6);
614 1 : CPPUNIT_TEST(testSortBroadcaster);
615 1 : CPPUNIT_TEST(testSortOutOfPlaceResult);
616 1 : CPPUNIT_TEST(testSortPartialFormulaGroup);
617 1 : CPPUNIT_TEST(testShiftCells);
618 1 : CPPUNIT_TEST(testNoteBasic);
619 1 : CPPUNIT_TEST(testNoteDeleteRow);
620 1 : CPPUNIT_TEST(testNoteDeleteCol);
621 1 : CPPUNIT_TEST(testNoteLifeCycle);
622 1 : CPPUNIT_TEST(testNoteCopyPaste);
623 1 : CPPUNIT_TEST(testAreasWithNotes);
624 1 : CPPUNIT_TEST(testAnchoredRotatedShape);
625 1 : CPPUNIT_TEST(testCellTextWidth);
626 1 : CPPUNIT_TEST(testEditTextIterator);
627 1 : CPPUNIT_TEST(testCondFormatINSDEL);
628 1 : CPPUNIT_TEST(testCondFormatInsertRow);
629 1 : CPPUNIT_TEST(testCondFormatInsertCol);
630 1 : CPPUNIT_TEST(testCondFormatInsertDeleteSheets);
631 1 : CPPUNIT_TEST(testCondCopyPaste);
632 1 : CPPUNIT_TEST(testCondCopyPasteSingleCell);
633 1 : CPPUNIT_TEST(testCondCopyPasteSingleCellToRange);
634 1 : CPPUNIT_TEST(testCondCopyPasteSheetBetweenDoc);
635 1 : CPPUNIT_TEST(testCondCopyPasteSheet);
636 1 : CPPUNIT_TEST(testIconSet);
637 1 : CPPUNIT_TEST(testDataBarLengthAutomaticAxis);
638 1 : CPPUNIT_TEST(testDataBarLengthMiddleAxis);
639 1 : CPPUNIT_TEST(testImportStream);
640 1 : CPPUNIT_TEST(testDeleteContents);
641 1 : CPPUNIT_TEST(testTransliterateText);
642 1 : CPPUNIT_TEST(testFormulaToValue);
643 1 : CPPUNIT_TEST(testFormulaToValue2);
644 1 : CPPUNIT_TEST(testColumnFindEditCells);
645 1 : CPPUNIT_TEST(testSetStringAndNote);
646 1 : CPPUNIT_TEST(testCopyPasteMatrixFormula);
647 1 : CPPUNIT_TEST(testUndoDataAnchor);
648 5 : CPPUNIT_TEST_SUITE_END();
649 :
650 : private:
651 : TestImpl* m_pImpl;
652 : ScDocument *m_pDoc;
653 : };
654 :
655 : #endif
656 :
657 : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|