sc/qa/unit/uicalc/data/tdf158802.xlsx |binary sc/qa/unit/uicalc/uicalc.cxx | 20 ++++++++++++++++++++ 2 files changed, 20 insertions(+)
New commits: commit a08cc309529c7bded0e4898ef638ca7bdc8c140f Author: Xisco Fauli <[email protected]> AuthorDate: Mon Mar 4 11:51:40 2024 +0100 Commit: Xisco Fauli <[email protected]> CommitDate: Mon Mar 4 19:57:04 2024 +0100 tdf#158802: sc_uicalc: Add unittest Change-Id: Ic9460d36ef1df18a05126bc06a5214c1d87317db Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164331 Tested-by: Jenkins Reviewed-by: Xisco Fauli <[email protected]> diff --git a/sc/qa/unit/uicalc/data/tdf158802.xlsx b/sc/qa/unit/uicalc/data/tdf158802.xlsx new file mode 100644 index 000000000000..82f9c9fe14a3 Binary files /dev/null and b/sc/qa/unit/uicalc/data/tdf158802.xlsx differ diff --git a/sc/qa/unit/uicalc/uicalc.cxx b/sc/qa/unit/uicalc/uicalc.cxx index af9fb5511d5e..1bf9dfc12883 100644 --- a/sc/qa/unit/uicalc/uicalc.cxx +++ b/sc/qa/unit/uicalc/uicalc.cxx @@ -1700,6 +1700,26 @@ CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf86166) CPPUNIT_ASSERT_EQUAL(static_cast<SCTAB>(1), pDoc->GetTableCount()); } +CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf158802) +{ + createScDoc("tdf158802.xlsx"); + ScDocument* pDoc = getScDoc(); + + CPPUNIT_ASSERT_EQUAL(static_cast<SCTAB>(2), pDoc->GetTableCount()); + + uno::Sequence<beans::PropertyValue> aArgs( + comphelper::InitPropertySequence({ { "Index", uno::Any(sal_uInt16(0)) } })); + + dispatchCommand(mxComponent, ".uno:Remove", aArgs); + + CPPUNIT_ASSERT_EQUAL(static_cast<SCTAB>(1), pDoc->GetTableCount()); + + // Without the fix in place, this test would have crashed here + dispatchCommand(mxComponent, ".uno:Undo", aArgs); + + CPPUNIT_ASSERT_EQUAL(static_cast<SCTAB>(2), pDoc->GetTableCount()); +} + CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf149502_HangOnDeletingSheet1) { createScDoc("tdf149502_HangOnDeletingSheet1.ods");
