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