sc/qa/unit/uicalc/uicalc.cxx |   20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

New commits:
commit 02367bacafe99fcfaa64c20fad0df50ba0b2301d
Author:     Xisco Fauli <xiscofa...@libreoffice.org>
AuthorDate: Fri May 13 11:34:41 2022 +0200
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Fri May 13 15:29:26 2022 +0200

    tdf#148863: sc_uicalc: Add unittest
    
    Change-Id: I15e692ed42445821e8fa65c955916c43f58072e6
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134271
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/sc/qa/unit/uicalc/uicalc.cxx b/sc/qa/unit/uicalc/uicalc.cxx
index f1b49d15ac5a..f70ee51a04b1 100644
--- a/sc/qa/unit/uicalc/uicalc.cxx
+++ b/sc/qa/unit/uicalc/uicalc.cxx
@@ -970,6 +970,26 @@ CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf145085)
     CPPUNIT_ASSERT_EQUAL(OUString(""), pDoc->GetString(ScAddress(0, 1, 0)));
 }
 
+CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf148863)
+{
+    mxComponent = loadFromDesktop("private:factory/scalc");
+    ScModelObj* pModelObj = dynamic_cast<ScModelObj*>(mxComponent.get());
+    CPPUNIT_ASSERT(pModelObj);
+    ScDocument* pDoc = pModelObj->GetDocument();
+    CPPUNIT_ASSERT(pDoc);
+
+    insertArrayToCell(*pModelObj, "A1", 
"=TRANSPOSE(IF({0|0|0}=0;RANDBETWEEN.NV(1;1000000)))");
+
+    double nA1 = pDoc->GetValue(ScAddress(0, 0, 0));
+    double nB1 = pDoc->GetValue(ScAddress(1, 0, 0));
+    double nC1 = pDoc->GetValue(ScAddress(2, 0, 0));
+
+    // Without the fix in place, this test woul have failed here
+    CPPUNIT_ASSERT(nA1 != nB1);
+    CPPUNIT_ASSERT(nA1 != nC1);
+    CPPUNIT_ASSERT(nB1 != nC1);
+}
+
 CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf144244)
 {
     ScModelObj* pModelObj = createDoc("tdf144244.ods");

Reply via email to