diff options
author | Kohei Yoshida <kohei.yoshida@collabora.com> | 2014-02-02 15:05:22 -0500 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@collabora.com> | 2014-02-02 15:11:12 -0500 |
commit | c5b79c8ae224b13a1035ab57998b0fe61d9fb886 (patch) | |
tree | a42eccf2330e7b610e359a9df454015d3f3bf1e5 /sc | |
parent | 4d881d03e5e7156a434719c689af05717bc58913 (diff) |
fdo#74041: Write unit test for this.
Change-Id: I3af0e5be3f7c6ae15ebd26335020c8beb96d14d2
Diffstat (limited to 'sc')
-rw-r--r-- | sc/qa/unit/ucalc.hxx | 2 | ||||
-rw-r--r-- | sc/qa/unit/ucalc_sharedformula.cxx | 20 |
2 files changed, 22 insertions, 0 deletions
diff --git a/sc/qa/unit/ucalc.hxx b/sc/qa/unit/ucalc.hxx index 0944f5a90f59..005e0c5b35a3 100644 --- a/sc/qa/unit/ucalc.hxx +++ b/sc/qa/unit/ucalc.hxx @@ -250,6 +250,7 @@ public: void testSharedFormulasDeleteRows(); void testSharedFormulasRefUpdateMoveSheets(); void testSharedFormulasCopyPaste(); + void testSharedFormulaInsertColumn(); void testFormulaPosition(); void testMixData(); @@ -406,6 +407,7 @@ public: CPPUNIT_TEST(testSharedFormulasDeleteRows); CPPUNIT_TEST(testSharedFormulasRefUpdateMoveSheets); CPPUNIT_TEST(testSharedFormulasCopyPaste); + CPPUNIT_TEST(testSharedFormulaInsertColumn); CPPUNIT_TEST(testFormulaPosition); CPPUNIT_TEST(testJumpToPrecedentsDependents); CPPUNIT_TEST(testSetBackgroundColor); diff --git a/sc/qa/unit/ucalc_sharedformula.cxx b/sc/qa/unit/ucalc_sharedformula.cxx index b4ce117f9cd3..04e917f35ebb 100644 --- a/sc/qa/unit/ucalc_sharedformula.cxx +++ b/sc/qa/unit/ucalc_sharedformula.cxx @@ -679,4 +679,24 @@ void Test::testSharedFormulasCopyPaste() m_pDoc->DeleteTab(0); } +void Test::testSharedFormulaInsertColumn() +{ + m_pDoc->InsertTab(0, "Test"); + + // Set shared formula group over H2:H3. + m_pDoc->SetString(ScAddress(7,1,0), "=G3*B3"); + m_pDoc->SetString(ScAddress(7,2,0), "=G4*B4"); + + // Insert a single column at Column F. This used to crash before fdo#74041. + m_pDoc->InsertCol(ScRange(5,0,0,5,MAXROW,0)); + + if (!checkFormula(*m_pDoc, ScAddress(8,1,0), "H3*B3")) + CPPUNIT_FAIL("Wrong formula!"); + + if (!checkFormula(*m_pDoc, ScAddress(8,2,0), "H4*B4")) + CPPUNIT_FAIL("Wrong formula!"); + + m_pDoc->DeleteTab(0); +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |