diff options
author | Zdeněk Crhonek <zcrhonek@gmail.com> | 2018-07-07 08:35:59 +0200 |
---|---|---|
committer | Zdenek Crhonek <zcrhonek@gmail.com> | 2018-07-08 07:59:50 +0200 |
commit | 107af098311beafaadb343c5a3634389f56006a0 (patch) | |
tree | 60992b3954b1cefead64652c5ebdb9873f69bb55 /sc | |
parent | 35bc6242f8ec22779144b4b1f3e876da239ddd85 (diff) |
uitest for bug tdf#117458
Change-Id: Ie6316a3b10567d0a291281a2358d4edfc5ab761c
Reviewed-on: https://gerrit.libreoffice.org/57107
Tested-by: Jenkins
Reviewed-by: Zdenek Crhonek <zcrhonek@gmail.com>
Diffstat (limited to 'sc')
-rw-r--r-- | sc/Module_sc.mk | 1 | ||||
-rw-r--r-- | sc/UITest_options.mk | 20 | ||||
-rw-r--r-- | sc/qa/uitest/options/tdf117458.py | 144 |
3 files changed, 165 insertions, 0 deletions
diff --git a/sc/Module_sc.mk b/sc/Module_sc.mk index 933d41736740..11518813b4eb 100644 --- a/sc/Module_sc.mk +++ b/sc/Module_sc.mk @@ -192,6 +192,7 @@ $(eval $(call gb_Module_add_uicheck_targets,sc,\ UITest_solver \ UITest_goalSeek \ UITest_protect \ + UITest_options \ )) endif diff --git a/sc/UITest_options.mk b/sc/UITest_options.mk new file mode 100644 index 000000000000..2869fb4a510e --- /dev/null +++ b/sc/UITest_options.mk @@ -0,0 +1,20 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# 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/. +# + +$(eval $(call gb_UITest_UITest,options)) + +$(eval $(call gb_UITest_add_modules,options,$(SRCDIR)/sc/qa/uitest,\ + options/ \ +)) + +$(eval $(call gb_UITest_set_defs,options, \ + TDOC="$(SRCDIR)/sc/qa/uitest/calc_tests/data" \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/sc/qa/uitest/options/tdf117458.py b/sc/qa/uitest/options/tdf117458.py new file mode 100644 index 000000000000..8d12f3cf63db --- /dev/null +++ b/sc/qa/uitest/options/tdf117458.py @@ -0,0 +1,144 @@ +# -*- 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 |