uitest/Module_uitest.mk | 1 uitest/UITest_manual_tests.mk | 15 ++++++++++ uitest/manual_tests/calc.py | 58 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 74 insertions(+)
New commits: commit 17fab5460332a75bcab0f734f17f7a2292a7aa27 Author: Markus Mohrhard <markus.mohrh...@googlemail.com> Date: Wed Dec 21 14:45:30 2016 +0100 uitest: add initial test for converting manual tests to automated tests Change-Id: I76637b76151a33c9f9f4b218aa01b5e813e9da1f Reviewed-on: https://gerrit.libreoffice.org/32283 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Markus Mohrhard <markus.mohrh...@googlemail.com> diff --git a/uitest/Module_uitest.mk b/uitest/Module_uitest.mk index 63bd596..fb82005 100644 --- a/uitest/Module_uitest.mk +++ b/uitest/Module_uitest.mk @@ -16,4 +16,5 @@ $(eval $(call gb_Module_add_uicheck_targets,uitest,\ UITest_impress_demo \ UITest_demo_ui \ UITest_math_demo \ + UITest_manual_tests \ )) diff --git a/uitest/UITest_manual_tests.mk b/uitest/UITest_manual_tests.mk new file mode 100644 index 0000000..d9ac95a --- /dev/null +++ b/uitest/UITest_manual_tests.mk @@ -0,0 +1,15 @@ +# -*- 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,manual_tests)) + +$(eval $(call gb_UITest_add_modules,manual_tests,$(SRCDIR)/uitest,\ + manual_tests/ \ +)) +# vim: set noet sw=4 ts=4: diff --git a/uitest/manual_tests/__init__.py b/uitest/manual_tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/uitest/manual_tests/calc.py b/uitest/manual_tests/calc.py new file mode 100644 index 0000000..b4680d2 --- /dev/null +++ b/uitest/manual_tests/calc.py @@ -0,0 +1,58 @@ +# -*- 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 libreoffice.uno.propertyvalue import mkPropertyValues + +from uitest.uihelper.common import get_state_as_dict + +import time + +class ManualCalcTests(UITestCase): + + def test_define_database_range(self): + + self.ui_test.create_doc_in_start_center("calc") + + # Select range A1:D10 + xGridWin = self.xUITest.getTopFocusWindow().getChild("grid_window") + xGridWin.executeAction("SELECT", mkPropertyValues({"RANGE": "A1:D10"})) + + # Execute "Define DB Range dialog" + self.ui_test.execute_modeless_dialog_through_command(".uno:DefineDBName") + + xDefineNameDlg = self.xUITest.getTopFocusWindow() + + xEntryBox = xDefineNameDlg.getChild("entry") + xEntryBox.executeAction("TYPE", mkPropertyValues({"TEXT": "my_database"})) + + xOkBtn = xDefineNameDlg.getChild("ok") + self.ui_test.close_dialog_through_button(xOkBtn) + + # Deselect range + xGridWin.executeAction("SELECT", mkPropertyValues({"CELL": "A1"})) + + # Execute "Select DB Range dialog" + self.ui_test.execute_dialog_through_command(".uno:SelectDB") + xSelectNameDlg = self.xUITest.getTopFocusWindow() + + xListBox = xSelectNameDlg.getChild("treeview") + xListBoxState = get_state_as_dict(xListBox) + self.assertEqual(xListBoxState["SelectEntryCount"], "1") + self.assertEqual(xListBoxState["SelectEntryText"], "my_database") + + xOkBtn = xSelectNameDlg.getChild("ok") + self.ui_test.close_dialog_through_button(xOkBtn) + + # Assert that the correct range has been selected + gridWinState = get_state_as_dict(xGridWin) + self.assertEqual(gridWinState["MarkedArea"], "Sheet1.A1:Sheet1.D10") + + self.ui_test.close_doc() + +# vim: set shiftwidth=4 softtabstop=4 expandtab: _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits