sc/qa/uitest/calc_dialogs/openDialogs.py | 4 +- sc/qa/uitest/calc_tests6/tdf147830.py | 52 +++++++++++++++++++++++++++++++ sc/qa/uitest/data/tdf147830.ods |binary 3 files changed, 54 insertions(+), 2 deletions(-)
New commits: commit 409371801a6c4ee00d7e55984e746ea9fe942447 Author: Xisco Fauli <xiscofa...@libreoffice.org> AuthorDate: Wed Mar 9 14:27:58 2022 +0100 Commit: Xisco Fauli <xiscofa...@libreoffice.org> CommitDate: Wed Mar 9 22:36:15 2022 +0100 tdf#147830: sc: Add UItest Change-Id: I9cc87630f6e9ec47d68285a8c2008d7afb6dfcfe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131251 Tested-by: Xisco Fauli <xiscofa...@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> diff --git a/sc/qa/uitest/calc_dialogs/openDialogs.py b/sc/qa/uitest/calc_dialogs/openDialogs.py index 0f4b5853b3ff..469d56f478fe 100644 --- a/sc/qa/uitest/calc_dialogs/openDialogs.py +++ b/sc/qa/uitest/calc_dialogs/openDialogs.py @@ -101,8 +101,8 @@ dialogs = [ # tested in sc/qa/uitest/autofilter/autofilterBugs.py # {"command": ".uno:DataFilterStandardFilter", "closeButton": "cancel"}, # tested in sc/qa/uitest/calc_tests2/standardFilter.py - {"command": ".uno:DataFilterSpecialFilter", "closeButton": "cancel", "skipTestOK": True}, - # OK button triggers a new dialog + #{"command": ".uno:DataFilterSpecialFilter", "closeButton": "cancel", "skipTestOK": True}, + # tested in sc/qa/uitest/calc_tests6/tdf147830.py # {"command": ".uno:DefineDBName", "closeButton": "cancel"}, # tested in sc/qa/uitest/range_name/tdf119954.py {"command": ".uno:SelectDB", "closeButton": "cancel"}, diff --git a/sc/qa/uitest/calc_tests6/tdf147830.py b/sc/qa/uitest/calc_tests6/tdf147830.py new file mode 100644 index 000000000000..521cca659548 --- /dev/null +++ b/sc/qa/uitest/calc_tests6/tdf147830.py @@ -0,0 +1,52 @@ +# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*- +# +# 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/. +# +from uitest.framework import UITestCase +from uitest.uihelper.common import get_url_for_data_file, get_state_as_dict, select_by_text +from libreoffice.calc.document import is_row_hidden + +class tdf147830(UITestCase): + + def test_tdf147830(self): + + with self.ui_test.load_file(get_url_for_data_file("tdf147830.ods")) as calc_doc: + + with self.ui_test.execute_modeless_dialog_through_command(".uno:DataFilterSpecialFilter") as xDialog: + xFilterArea = xDialog.getChild("lbfilterarea") + self.assertEqual("- undefined -", get_state_as_dict(xFilterArea)["SelectEntryText"]) + self.assertEqual("5", get_state_as_dict(xFilterArea)["EntryCount"]) + + select_by_text(xFilterArea, "Irgendwo") + + xEditFilterArea = xDialog.getChild("edfilterarea") + self.assertEqual("$Filterkriterien.$A$40:$AMF$60", get_state_as_dict(xEditFilterArea)["Text"]) + + # Without the fix in place, this test would have crashed here + + self.assertFalse(is_row_hidden(calc_doc, 0)) + for i in range(1, 17): + self.assertTrue(is_row_hidden(calc_doc, i)) + + self.assertFalse(is_row_hidden(calc_doc, 17)) + self.assertTrue(is_row_hidden(calc_doc, 18)) + self.assertTrue(is_row_hidden(calc_doc, 19)) + self.assertTrue(is_row_hidden(calc_doc, 20)) + + for i in range(21, 26): + self.assertFalse(is_row_hidden(calc_doc, i)) + + self.assertTrue(is_row_hidden(calc_doc, 27)) + self.assertFalse(is_row_hidden(calc_doc, 28)) + self.assertFalse(is_row_hidden(calc_doc, 29)) + + self.xUITest.executeCommand(".uno:Undo") + + for i in range(30): + self.assertFalse(is_row_hidden(calc_doc, i)) + +# vim: set shiftwidth=4 softtabstop=4 expandtab: diff --git a/sc/qa/uitest/data/tdf147830.ods b/sc/qa/uitest/data/tdf147830.ods new file mode 100644 index 000000000000..207dec88ed1f Binary files /dev/null and b/sc/qa/uitest/data/tdf147830.ods differ