[Libreoffice-commits] core.git: sc/qa sc/source

Xisco Fauli (via logerrit) logerrit at kemper.freedesktop.org
Wed Feb 17 22:44:05 UTC 2021


 sc/qa/uitest/data/tdf105301.ods   |binary
 sc/qa/uitest/sort/tdf105301.py    |   42 ++++++++++++++++++++++++++++++++++++++
 sc/source/ui/dbgui/sortkeydlg.cxx |    7 ++++++
 3 files changed, 49 insertions(+)

New commits:
commit fb1aa71ca3f7bec3fa6a10c4c3dec37987b213a2
Author:     Xisco Fauli <xiscofauli at libreoffice.org>
AuthorDate: Wed Feb 17 21:48:26 2021 +0100
Commit:     Xisco Fauli <xiscofauli at libreoffice.org>
CommitDate: Wed Feb 17 23:43:19 2021 +0100

    tdf#105301: sc: Add UItest
    
    Also add a way to distinguish the different sort keys.
    Similar to d4ca173f2babde53c1d20f10e335244b092c5c97
    
    Change-Id: I89499cf73ad9932f401bb9a54c30510082d59601
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111086
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <xiscofauli at libreoffice.org>

diff --git a/sc/qa/uitest/data/tdf105301.ods b/sc/qa/uitest/data/tdf105301.ods
new file mode 100644
index 000000000000..58f2fe759e06
Binary files /dev/null and b/sc/qa/uitest/data/tdf105301.ods differ
diff --git a/sc/qa/uitest/sort/tdf105301.py b/sc/qa/uitest/sort/tdf105301.py
new file mode 100644
index 000000000000..71ec6372c762
--- /dev/null
+++ b/sc/qa/uitest/sort/tdf105301.py
@@ -0,0 +1,42 @@
+# -*- 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, get_url_for_data_file
+from uitest.uihelper.common import select_pos
+from libreoffice.uno.propertyvalue import mkPropertyValues
+
+class tdf105301(UITestCase):
+
+    def test_tdf105301(self):
+        calc_doc = self.ui_test.load_file(get_url_for_data_file("tdf105301.ods"))
+        xCalcDoc = self.xUITest.getTopFocusWindow()
+        gridwin = xCalcDoc.getChild("grid_window")
+        document = self.ui_test.get_component()
+
+        gridwin.executeAction("SELECT", mkPropertyValues({"RANGE": "A1:R9"}))
+
+        self.ui_test.execute_dialog_through_command(".uno:DataSort")
+        xDialog = self.xUITest.getTopFocusWindow()
+        xTabs = xDialog.getChild("tabcontrol")
+        select_pos(xTabs, "0")
+        self.assertEqual("Column B", get_state_as_dict(xDialog.getChild("sortlb"))['DisplayText'])
+        self.assertEqual("Column C", get_state_as_dict(xDialog.getChild("sortlb2"))['DisplayText'])
+        self.assertEqual("Column D", get_state_as_dict(xDialog.getChild("sortlb3"))['DisplayText'])
+
+        # Without the fix in place, this test would have failed with
+        # AssertionError: 'Column E' != '- undefined -'
+        self.assertEqual("Column E", get_state_as_dict(xDialog.getChild("sortlb4"))['DisplayText'])
+        self.assertEqual("Column F", get_state_as_dict(xDialog.getChild("sortlb5"))['DisplayText'])
+        self.assertEqual("Column G", get_state_as_dict(xDialog.getChild("sortlb6"))['DisplayText'])
+        self.assertEqual("- undefined -", get_state_as_dict(xDialog.getChild("sortlb7"))['DisplayText'])
+
+        xOk = xDialog.getChild("ok")
+        self.ui_test.close_dialog_through_button(xOk)
+
+        self.ui_test.close_doc()
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/sc/source/ui/dbgui/sortkeydlg.cxx b/sc/source/ui/dbgui/sortkeydlg.cxx
index a5cf6e8f4e66..cee1f54e0607 100644
--- a/sc/source/ui/dbgui/sortkeydlg.cxx
+++ b/sc/source/ui/dbgui/sortkeydlg.cxx
@@ -57,6 +57,13 @@ void ScSortKeyWindow::AddSortKey( sal_uInt16 nItemNumber )
                      OUString::number( nItemNumber );
     pSortKeyItem->m_xFrame->set_label(aLine);
 
+    // for ui-testing. Distinguish the sort keys
+    if ( m_aSortKeyItems.size() > 0 )
+    {
+        pSortKeyItem->m_xLbSort->set_buildable_name(
+            pSortKeyItem->m_xLbSort->get_buildable_name() + OString::number(m_aSortKeyItems.size() + 1));
+    }
+
     m_aSortKeyItems.push_back(std::unique_ptr<ScSortKeyItem>(pSortKeyItem));
 }
 


More information about the Libreoffice-commits mailing list