summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorViKrAm-Bais <vikrambais02@gmail.com>2021-03-03 13:28:05 +0530
committerXisco Fauli <xiscofauli@libreoffice.org>2021-03-04 12:03:14 +0100
commit55d83110df4782153d0e37c50f64e5260a0a518e (patch)
tree69984addc83287a7f164e22de0ab2a47d66ba480
parent2dd772f921ca36ed9c0f634345dd2af33ac2b9f5 (diff)
tdf#116215 sc: move UItest to CppunitTest
Change-Id: Iae6076bd34331e7ddf441a7d6de22ad9b784b0a9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111867 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
-rw-r--r--sc/qa/uitest/calc_tests2/tdf116215.py42
-rw-r--r--sc/qa/unit/uicalc/uicalc.cxx35
2 files changed, 35 insertions, 42 deletions
diff --git a/sc/qa/uitest/calc_tests2/tdf116215.py b/sc/qa/uitest/calc_tests2/tdf116215.py
deleted file mode 100644
index 958546077707..000000000000
--- a/sc/qa/uitest/calc_tests2/tdf116215.py
+++ /dev/null
@@ -1,42 +0,0 @@
-# -*- 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
-import os
-from uitest.uihelper.common import get_state_as_dict
-from uitest.uihelper.calc import enter_text_to_cell
-from libreoffice.calc.document import get_sheet_from_doc
-from libreoffice.calc.conditional_format import get_conditional_format_from_sheet
-from uitest.debug import sleep
-from libreoffice.calc.document import get_cell_by_position
-from libreoffice.uno.propertyvalue import mkPropertyValues
-#Bug: Sum button: Calc adds wrong sum formulas if you select more than one row or column
-
-class tdf116215(UITestCase):
-
- def test_tdf116215_autosum_wrong_more_rows_columns(self):
- calc_doc = self.ui_test.create_doc_in_start_center("calc")
- xCalcDoc = self.xUITest.getTopFocusWindow()
- gridwin = xCalcDoc.getChild("grid_window")
- document = self.ui_test.get_component()
- enter_text_to_cell(gridwin, "A1", "1")
- enter_text_to_cell(gridwin, "A2", "1")
- enter_text_to_cell(gridwin, "B1", "1")
- enter_text_to_cell(gridwin, "B2", "1")
- gridwin.executeAction("SELECT", mkPropertyValues({"RANGE": "A1:C3"}))
- self.xUITest.executeCommand(".uno:AutoSum")
-
- self.assertEqual(get_cell_by_position(document, 0, 0, 2).getValue(), 2)
- self.assertEqual(get_cell_by_position(document, 0, 0, 2).getFormula(), "=SUM(A1:A2)")
- self.assertEqual(get_cell_by_position(document, 0, 1, 2).getValue(), 2)
- self.assertEqual(get_cell_by_position(document, 0, 1, 2).getFormula(), "=SUM(B1:B2)")
- self.assertEqual(get_cell_by_position(document, 0, 2, 0).getValue(), 2)
- self.assertEqual(get_cell_by_position(document, 0, 2, 0).getFormula(), "=SUM(A1:B1)")
- self.assertEqual(get_cell_by_position(document, 0, 2, 1).getValue(), 2)
- self.assertEqual(get_cell_by_position(document, 0, 2, 1).getFormula(), "=SUM(A2:B2)")
- self.ui_test.close_doc()
-
-# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/sc/qa/unit/uicalc/uicalc.cxx b/sc/qa/unit/uicalc/uicalc.cxx
index d771f354899d..d0d3c03181ef 100644
--- a/sc/qa/unit/uicalc/uicalc.cxx
+++ b/sc/qa/unit/uicalc/uicalc.cxx
@@ -1317,6 +1317,41 @@ CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf123202)
CPPUNIT_ASSERT(pDoc->RowHidden(2, 0));
}
+CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf116215)
+{
+ mxComponent = loadFromDesktop("private:factory/scalc");
+ ScModelObj* pModelObj = dynamic_cast<ScModelObj*>(mxComponent.get());
+ CPPUNIT_ASSERT(pModelObj);
+ ScDocument* pDoc = pModelObj->GetDocument();
+ CPPUNIT_ASSERT(pDoc);
+ insertStringToCell(*pModelObj, "A1", "1");
+ insertStringToCell(*pModelObj, "A2", "1");
+ insertStringToCell(*pModelObj, "B1", "1");
+ insertStringToCell(*pModelObj, "B2", "1");
+ goToCell("A1:C3");
+ dispatchCommand(mxComponent, ".uno:AutoSum", {});
+
+ CPPUNIT_ASSERT_EQUAL(2.0, pDoc->GetValue(ScAddress(0, 2, 0)));
+ OUString aFormula;
+ pDoc->GetFormula(0, 2, 0, aFormula);
+ CPPUNIT_ASSERT_EQUAL(OUString("=SUM(A1:A2)"), aFormula);
+
+ // Without the fix in place, this test would have failed with
+ // - Expected: 2
+ // - Actual : 4
+ CPPUNIT_ASSERT_EQUAL(2.0, pDoc->GetValue(ScAddress(1, 2, 0)));
+ pDoc->GetFormula(1, 2, 0, aFormula);
+ CPPUNIT_ASSERT_EQUAL(OUString("=SUM(B1:B2)"), aFormula);
+
+ CPPUNIT_ASSERT_EQUAL(2.0, pDoc->GetValue(ScAddress(2, 0, 0)));
+ pDoc->GetFormula(2, 0, 0, aFormula);
+ CPPUNIT_ASSERT_EQUAL(OUString("=SUM(A1:B1)"), aFormula);
+
+ CPPUNIT_ASSERT_EQUAL(2.0, pDoc->GetValue(ScAddress(2, 1, 0)));
+ pDoc->GetFormula(2, 1, 0, aFormula);
+ CPPUNIT_ASSERT_EQUAL(OUString("=SUM(A2:B2)"), aFormula);
+}
+
CPPUNIT_PLUGIN_IMPLEMENT();
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */