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

Reply via email to