diff options
author | Xisco Fauli <xiscofauli@libreoffice.org> | 2021-01-06 18:15:44 +0100 |
---|---|---|
committer | Xisco Fauli <xiscofauli@libreoffice.org> | 2021-01-07 01:25:37 +0100 |
commit | d4a96a931210fc4713d4ab6325e30cd34ffa7b37 (patch) | |
tree | 4585e0069810167b4ac2cfc08e3aaa738e9ef0dc | |
parent | 8ddc0fd04e29640fd05fed7b7bdbc387a1c94bf6 (diff) |
tdf#134439, tdf#116070: sw: Add UItest
Change-Id: I7daf9437244238dfd4e270e8dee30ab8bfe4cc3c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108885
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
-rw-r--r-- | sw/qa/uitest/data/tdf134439.odt | bin | 0 -> 19375 bytes | |||
-rw-r--r-- | sw/qa/uitest/writer_tests4/tdf134439.py | 67 |
2 files changed, 67 insertions, 0 deletions
diff --git a/sw/qa/uitest/data/tdf134439.odt b/sw/qa/uitest/data/tdf134439.odt Binary files differnew file mode 100644 index 000000000000..011a75a343b8 --- /dev/null +++ b/sw/qa/uitest/data/tdf134439.odt diff --git a/sw/qa/uitest/writer_tests4/tdf134439.py b/sw/qa/uitest/writer_tests4/tdf134439.py new file mode 100644 index 000000000000..aec16c7ba849 --- /dev/null +++ b/sw/qa/uitest/writer_tests4/tdf134439.py @@ -0,0 +1,67 @@ +# -*- 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 libreoffice.uno.propertyvalue import mkPropertyValues +import org.libreoffice.unotest +import pathlib + +def get_url_for_data_file(file_name): + return pathlib.Path(org.libreoffice.unotest.makeCopyFromTDOC(file_name)).as_uri() + +class tdf134439(UITestCase): + + def test_tdf134439(self): + + self.ui_test.load_file(get_url_for_data_file("tdf134439.odt")) + + document = self.ui_test.get_component() + + self.assertEqual(document.CurrentController.PageCount, 3) + + xCursor = document.CurrentController.ViewCursor + self.assertEqual("Chap 1", xCursor.PageStyleName) + + xWriterDoc = self.xUITest.getTopFocusWindow() + xWriterEdit = xWriterDoc.getChild("writer_edit") + self.ui_test.wait_until_child_is_available(xWriterEdit, 'PageBreak') + xPageBreak = xWriterEdit.getChild('PageBreak') + + self.ui_test.execute_dialog_through_action(xPageBreak, "EDIT") + + xDialog = self.xUITest.getTopFocusWindow() + + self.assertEqual("Page", get_state_as_dict(xDialog.getChild("comboBreakType"))["SelectEntryText"]) + self.assertEqual("Before", get_state_as_dict(xDialog.getChild("comboBreakPosition"))["SelectEntryText"]) + + xPageStyle = xDialog.getChild("comboPageStyle") + self.assertEqual("Chap 2", get_state_as_dict(xPageStyle)["SelectEntryText"]) + + xPageStyle.executeAction("SELECT", mkPropertyValues({"TEXT": "Chap 3"})) + + self.assertEqual("Chap 3", get_state_as_dict(xPageStyle)["SelectEntryText"]) + + # tdf#116070: Without the fix in place, this test would have crashed here + okBtn = xDialog.getChild("ok") + self.ui_test.close_dialog_through_button(okBtn) + + # Without the fix in place, this test would have failed with + # AssertionError: 'Chap 1' != 'Chap 3' + self.assertEqual("Chap 1", xCursor.PageStyleName) + + self.assertEqual(document.CurrentController.PageCount, 3) + + xCursor.jumpToNextPage() + self.assertEqual("Chap 3", xCursor.PageStyleName) + + self.xUITest.executeCommand(".uno:Undo") + + self.assertEqual("Chap 2", xCursor.PageStyleName) + + self.ui_test.close_doc() + +# vim: set shiftwidth=4 softtabstop=4 expandtab: |