File indexing completed on 2024-04-28 03:48:10

0001 /*
0002     File                 : WorksheetElementTest.h
0003     Project              : LabPlot
0004     Description          : Tests for WorksheetElements and positioning them on the plot
0005     --------------------------------------------------------------------
0006     SPDX-FileCopyrightText: 2023 Martin Marmsoler <martin.marmsoler@gmail.com>
0007 
0008     SPDX-License-Identifier: GPL-2.0-or-later
0009 */
0010 
0011 #ifndef WORKSHEETELEMENTTEST_H
0012 #define WORKSHEETELEMENTTEST_H
0013 
0014 #include "../../CommonTest.h"
0015 #include "helperMacros.h"
0016 
0017 #define ALL_WORKSHEET_TESTS_DEFINITION(WorksheetElementType)                                                                                                   \
0018     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_SETPOSITIONLOGICAL);                                                               \
0019     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_MOUSE_MOVE);                                                                       \
0020     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_KEYPRESS_RIGHT_UNDO);                                                              \
0021     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_KEYPRESS_UP_UNDO);                                                                 \
0022     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_KEYPRESS_RIGHT_NO_COORD_BINDING);                                                  \
0023     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_KEYPRESS_DOWN_NO_COORD_BINDING);                                                   \
0024     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_KEYPRESS_RIGHT);                                                                   \
0025     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_KEY_PRESSLEFT);                                                                    \
0026     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_KEYPRESS_UP);                                                                      \
0027     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_KEYPRESS_DOWN);                                                                    \
0028     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_ENABLE_DISABLE_COORDBINDING);                                                      \
0029     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_SHIFTX_COORDBINDING);                                                              \
0030     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_SHIFTY_COORDBINDING);                                                              \
0031     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_SHIFTX_NO_COORDBINDING);                                                           \
0032     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, WORKSHEETELEMENT_SHIFTY_NO_COORDBINDING);                                                           \
0033     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, MOUSE_MOVE_DATETIME);                                                                               \
0034     WORKSHEETELEMENT_TEST_DEFINITION(WorksheetElementType, DOCK_CHANGE_DATETIME);
0035 
0036 class WorksheetElementTest : public CommonTest {
0037     Q_OBJECT
0038 
0039 private Q_SLOTS:
0040     void initTestCase();
0041     ALL_WORKSHEET_TESTS_DEFINITION(CustomPoint)
0042     ALL_WORKSHEET_TESTS_DEFINITION(TextLabel)
0043     ALL_WORKSHEET_TESTS_DEFINITION(Image)
0044 
0045     void referenceRangeXMouseMove();
0046     void referenceRangeYMouseMove();
0047 
0048     void referenceRangeXClippingLeftMouse();
0049     void referenceRangeXClippingLeftSetStart();
0050     void referenceRangeXClippingRightSetEnd();
0051 
0052     void referenceRangeYClippingBottomSetEnd();
0053     void referenceRangeYClippingTopSetEnd();
0054 
0055     void referenceRangeYKeyPressUp();
0056 
0057     void referenceRangeSaveLoad();
0058 
0059     void referenceLineLinearScaling();
0060     void referenceLineLog10Scaling();
0061     void referenceLineSquareScaling();
0062     void referenceLineSqrtScaling();
0063     void referenceLineInverseScaling();
0064 };
0065 
0066 #endif // WORKSHEETELEMENTTEST_H