diff options
author | Xisco Fauli <xiscofauli@libreoffice.org> | 2021-01-25 17:08:05 +0100 |
---|---|---|
committer | Xisco Fauli <xiscofauli@libreoffice.org> | 2021-01-25 18:59:15 +0100 |
commit | 0b39d386e4742afa4efcf293baf0e2922505306a (patch) | |
tree | 6165be5fa4c282eeaa90e84fe4321f25c8f25132 | |
parent | 808b2f556667fb2269e8936af91df2a9adf61764 (diff) |
tdf#117458: sc: Move UItest to CppUnitTest
Change-Id: I6cd31f3e65bc2a443d105b3d10afc7f9f24a3457
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109919
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
-rw-r--r-- | sc/qa/uitest/options/tdf117458.py | 144 | ||||
-rw-r--r-- | sc/qa/unit/uicalc/uicalc.cxx | 51 |
2 files changed, 51 insertions, 144 deletions
diff --git a/sc/qa/uitest/options/tdf117458.py b/sc/qa/uitest/options/tdf117458.py deleted file mode 100644 index 8d12f3cf63db..000000000000 --- a/sc/qa/uitest/options/tdf117458.py +++ /dev/null @@ -1,144 +0,0 @@ -# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*- -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -from uitest.framework import UITestCase -from uitest.uihelper.common import get_state_as_dict -from uitest.uihelper.common import select_pos -from uitest.uihelper.calc import enter_text_to_cell -from libreoffice.calc.document import get_cell_by_position -from libreoffice.uno.propertyvalue import mkPropertyValues - -#Bug 117458 - Selection doesn't move left nor right by pressing ENTER - -class tdf117458(UITestCase): - def test_tdf117458_selection_move_by_enter(self): - calc_doc = self.ui_test.create_doc_in_start_center("calc") - xCalcDoc = self.xUITest.getTopFocusWindow() - gridwin = xCalcDoc.getChild("grid_window") - document = self.ui_test.get_component() - #Go to Tools -> Options -> LibreOffice Calc -> General - self.ui_test.execute_dialog_through_command(".uno:OptionsTreeDialog") #optionsdialog - xDialogOpt = self.xUITest.getTopFocusWindow() - - xPages = xDialogOpt.getChild("pages") - xCalcEntry = xPages.getChild('3') # Calc - xCalcEntry.executeAction("EXPAND", tuple()) - xCalcGeneralEntry = xCalcEntry.getChild('0') - xCalcGeneralEntry.executeAction("SELECT", tuple()) #General - xaligncb = xDialogOpt.getChild("aligncb") - xalignlb = xDialogOpt.getChild("alignlb") - if (get_state_as_dict(xaligncb)["Selected"]) == "false": - xaligncb.executeAction("CLICK", tuple()) - #Down - props = {"TEXT": "Down"} - actionProps = mkPropertyValues(props) - xalignlb.executeAction("SELECT", actionProps) - - xOKBtn = xDialogOpt.getChild("ok") - self.ui_test.close_dialog_through_button(xOKBtn) - #Select cell A1 - #and down up to "deselect" range - gridwin.executeAction("SELECT", mkPropertyValues({"CELL": "A1"})) - self.xUITest.executeCommand(".uno:GoDown") - self.xUITest.executeCommand(".uno:GoUp") - #press Enter - gridwin.executeAction("TYPE", mkPropertyValues({"KEYCODE": "RETURN"})) - #Verify - self.assertEqual(get_state_as_dict(gridwin)["CurrentRow"], "1") - - #Go to Tools -> Options -> LibreOffice Calc -> General - self.ui_test.execute_dialog_through_command(".uno:OptionsTreeDialog") #optionsdialog - xDialogOpt = self.xUITest.getTopFocusWindow() - - xPages = xDialogOpt.getChild("pages") - xCalcEntry = xPages.getChild('3') # Calc - xCalcEntry.executeAction("EXPAND", tuple()) - xCalcGeneralEntry = xCalcEntry.getChild('0') - xCalcGeneralEntry.executeAction("SELECT", tuple()) #General - xaligncb = xDialogOpt.getChild("aligncb") - xalignlb = xDialogOpt.getChild("alignlb") - if (get_state_as_dict(xaligncb)["Selected"]) == "false": - xaligncb.executeAction("CLICK", tuple()) - #Up - props = {"TEXT": "Up"} - actionProps = mkPropertyValues(props) - xalignlb.executeAction("SELECT", actionProps) - - xOKBtn = xDialogOpt.getChild("ok") - self.ui_test.close_dialog_through_button(xOKBtn) - #Select cell A2 - #and down up to "deselect" range - gridwin.executeAction("SELECT", mkPropertyValues({"CELL": "A2"})) - self.xUITest.executeCommand(".uno:GoDown") - self.xUITest.executeCommand(".uno:GoUp") - #press Enter - gridwin.executeAction("TYPE", mkPropertyValues({"KEYCODE": "RETURN"})) - #Verify - self.assertEqual(get_state_as_dict(gridwin)["CurrentRow"], "0") - - #Go to Tools -> Options -> LibreOffice Calc -> General - self.ui_test.execute_dialog_through_command(".uno:OptionsTreeDialog") #optionsdialog - xDialogOpt = self.xUITest.getTopFocusWindow() - - xPages = xDialogOpt.getChild("pages") - xCalcEntry = xPages.getChild('3') # Calc - xCalcEntry.executeAction("EXPAND", tuple()) - xCalcGeneralEntry = xCalcEntry.getChild('0') - xCalcGeneralEntry.executeAction("SELECT", tuple()) #General - xaligncb = xDialogOpt.getChild("aligncb") - xalignlb = xDialogOpt.getChild("alignlb") - if (get_state_as_dict(xaligncb)["Selected"]) == "false": - xaligncb.executeAction("CLICK", tuple()) - #Right - props = {"TEXT": "Right"} - actionProps = mkPropertyValues(props) - xalignlb.executeAction("SELECT", actionProps) - - xOKBtn = xDialogOpt.getChild("ok") - self.ui_test.close_dialog_through_button(xOKBtn) - #Select cell A1 - #and down up to "deselect" range - gridwin.executeAction("SELECT", mkPropertyValues({"CELL": "A1"})) - self.xUITest.executeCommand(".uno:GoDown") - self.xUITest.executeCommand(".uno:GoUp") - #press Enter - gridwin.executeAction("TYPE", mkPropertyValues({"KEYCODE": "RETURN"})) - #Verify - self.assertEqual(get_state_as_dict(gridwin)["CurrentColumn"], "1") - - #Go to Tools -> Options -> LibreOffice Calc -> General - self.ui_test.execute_dialog_through_command(".uno:OptionsTreeDialog") #optionsdialog - xDialogOpt = self.xUITest.getTopFocusWindow() - - xPages = xDialogOpt.getChild("pages") - xCalcEntry = xPages.getChild('3') # Calc - xCalcEntry.executeAction("EXPAND", tuple()) - xCalcGeneralEntry = xCalcEntry.getChild('0') - xCalcGeneralEntry.executeAction("SELECT", tuple()) #General - xaligncb = xDialogOpt.getChild("aligncb") - xalignlb = xDialogOpt.getChild("alignlb") - if (get_state_as_dict(xaligncb)["Selected"]) == "false": - xaligncb.executeAction("CLICK", tuple()) - #Left - props = {"TEXT": "Left"} - actionProps = mkPropertyValues(props) - xalignlb.executeAction("SELECT", actionProps) - - xOKBtn = xDialogOpt.getChild("ok") - self.ui_test.close_dialog_through_button(xOKBtn) - #Select cell B1 - #and down up to "deselect" range - gridwin.executeAction("SELECT", mkPropertyValues({"CELL": "B1"})) - self.xUITest.executeCommand(".uno:GoDown") - self.xUITest.executeCommand(".uno:GoUp") - #press Enter - gridwin.executeAction("TYPE", mkPropertyValues({"KEYCODE": "RETURN"})) - #Verify - self.assertEqual(get_state_as_dict(gridwin)["CurrentColumn"], "0") - - self.ui_test.close_doc() - -# vim: set shiftwidth=4 softtabstop=4 expandtab:
\ No newline at end of file diff --git a/sc/qa/unit/uicalc/uicalc.cxx b/sc/qa/unit/uicalc/uicalc.cxx index 5dbb55d1ba04..5924ff02bc8f 100644 --- a/sc/qa/unit/uicalc/uicalc.cxx +++ b/sc/qa/unit/uicalc/uicalc.cxx @@ -199,6 +199,57 @@ CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf120660) pMod->SetInputOptions(aInputOption); } +CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf117458) +{ + mxComponent = loadFromDesktop("private:factory/scalc"); + ScModelObj* pModelObj = dynamic_cast<ScModelObj*>(mxComponent.get()); + CPPUNIT_ASSERT(pModelObj); + ScDocument* pDoc = pModelObj->GetDocument(); + CPPUNIT_ASSERT(pDoc); + + ScModule* pMod = SC_MOD(); + ScInputOptions aInputOption = pMod->GetInputOptions(); + sal_uInt16 bOldStatus = aInputOption.GetMoveDir(); + + lcl_AssertCurrentCursorPosition(0, 0); + + aInputOption.SetMoveDir(DIR_BOTTOM); + pMod->SetInputOptions(aInputOption); + + pModelObj->postKeyEvent(LOK_KEYEVENT_KEYINPUT, 0, awt::Key::RETURN); + Scheduler::ProcessEventsToIdle(); + + lcl_AssertCurrentCursorPosition(0, 1); + + aInputOption.SetMoveDir(DIR_TOP); + pMod->SetInputOptions(aInputOption); + + pModelObj->postKeyEvent(LOK_KEYEVENT_KEYINPUT, 0, awt::Key::RETURN); + Scheduler::ProcessEventsToIdle(); + + lcl_AssertCurrentCursorPosition(0, 0); + + aInputOption.SetMoveDir(DIR_RIGHT); + pMod->SetInputOptions(aInputOption); + + pModelObj->postKeyEvent(LOK_KEYEVENT_KEYINPUT, 0, awt::Key::RETURN); + Scheduler::ProcessEventsToIdle(); + + lcl_AssertCurrentCursorPosition(1, 0); + + aInputOption.SetMoveDir(DIR_LEFT); + pMod->SetInputOptions(aInputOption); + + pModelObj->postKeyEvent(LOK_KEYEVENT_KEYINPUT, 0, awt::Key::RETURN); + Scheduler::ProcessEventsToIdle(); + + lcl_AssertCurrentCursorPosition(0, 0); + + // Restore previous status + aInputOption.SetMoveDir(bOldStatus); + pMod->SetInputOptions(aInputOption); +} + CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf138710) { ScModelObj* pModelObj = createDoc("tdf138710.ods"); |