diff options
author | Xisco Fauli <xiscofauli@libreoffice.org> | 2020-08-07 11:41:00 +0200 |
---|---|---|
committer | Xisco Fauli <xiscofauli@libreoffice.org> | 2020-08-07 21:06:32 +0200 |
commit | b02d05f460fb43424d4288969ea826afc06b66e5 (patch) | |
tree | 35a621a02d70907b9d314f19104bb015311bbe1f | |
parent | 9c894db4a32fd6f2c50202c7769fa86ba1bd5247 (diff) |
tdf#135249: sc_ucalc: Add unittest
Change-Id: Iddaf35d0b0afa44f081db2a1ac4f29567876f967
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100300
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
-rw-r--r-- | sc/qa/unit/ucalc.cxx | 27 | ||||
-rw-r--r-- | sc/qa/unit/ucalc.hxx | 2 |
2 files changed, 29 insertions, 0 deletions
diff --git a/sc/qa/unit/ucalc.cxx b/sc/qa/unit/ucalc.cxx index eb9636caaea1..6cd9a5db7ba0 100644 --- a/sc/qa/unit/ucalc.cxx +++ b/sc/qa/unit/ucalc.cxx @@ -456,6 +456,33 @@ void Test::testColumnIterator() // tdf#118620 m_pDoc->DeleteTab(0); } +void Test::testTdf135249() +{ + CPPUNIT_ASSERT(m_pDoc->InsertTab (0, "Test")); + + m_pDoc->SetString(ScAddress(0,0,0), "1:60"); + m_pDoc->SetString(ScAddress(0,1,0), "1:123"); + m_pDoc->SetString(ScAddress(0,2,0), "1:1:123"); + m_pDoc->SetString(ScAddress(0,3,0), "0:123"); + m_pDoc->SetString(ScAddress(0,4,0), "0:0:123"); + m_pDoc->SetString(ScAddress(0,5,0), "0:123:59"); + + // These are not valid duration inputs + CPPUNIT_ASSERT_EQUAL(OUString("1:60"), m_pDoc->GetString(ScAddress(0,0,0))); + CPPUNIT_ASSERT_EQUAL(OUString("1:123"), m_pDoc->GetString(ScAddress(0,1,0))); + CPPUNIT_ASSERT_EQUAL(OUString("1:1:123"), m_pDoc->GetString(ScAddress(0,2,0))); + + // These are valid duration inputs + // Without the fix in place, this test would have failed with + // - Expected: 02:03:00 AM + // - Actual : 0:123 + CPPUNIT_ASSERT_EQUAL(OUString("02:03:00 AM"), m_pDoc->GetString(ScAddress(0,3,0))); + CPPUNIT_ASSERT_EQUAL(OUString("12:02:03 AM"), m_pDoc->GetString(ScAddress(0,4,0))); + CPPUNIT_ASSERT_EQUAL(OUString("02:03:59 AM"), m_pDoc->GetString(ScAddress(0,5,0))); + + m_pDoc->DeleteTab(0); +} + void Test::testDocStatistics() { SCTAB nStartTabs = m_pDoc->GetTableCount(); diff --git a/sc/qa/unit/ucalc.hxx b/sc/qa/unit/ucalc.hxx index 2f2b8bc5501c..cba0a60c8143 100644 --- a/sc/qa/unit/ucalc.hxx +++ b/sc/qa/unit/ucalc.hxx @@ -126,6 +126,7 @@ public: void testMarkData(); void testInput(); void testColumnIterator(); + void testTdf135249(); void testDocStatistics(); void testRowForHeight(); @@ -581,6 +582,7 @@ public: CPPUNIT_TEST(testMarkData); CPPUNIT_TEST(testInput); CPPUNIT_TEST(testColumnIterator); + CPPUNIT_TEST(testTdf135249); CPPUNIT_TEST(testDocStatistics); CPPUNIT_TEST(testRowForHeight); CPPUNIT_TEST(testDataEntries); |