[Libreoffice-commits] .: 5 commits - sc/qa sc/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Mon Sep 17 21:22:58 PDT 2012
sc/qa/unit/rangelst_test.cxx | 73 +++++++++++++++++++++++++++++++++++----
sc/source/core/tool/rangelst.cxx | 18 ++++-----
2 files changed, 76 insertions(+), 15 deletions(-)
New commits:
commit 01e63352677242ca6915cc37601c4f8b0a49881c
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Tue Sep 18 06:18:11 2012 +0200
and another test for ScRangeList::DeleteArea
Change-Id: I1fa81b32f9ffc70769876becbcf213796cab405b
diff --git a/sc/qa/unit/rangelst_test.cxx b/sc/qa/unit/rangelst_test.cxx
index a2289b6..b447dc1 100644
--- a/sc/qa/unit/rangelst_test.cxx
+++ b/sc/qa/unit/rangelst_test.cxx
@@ -88,6 +88,21 @@ void Test::testDeleteArea_4Ranges()
void Test::testDeleteArea_3Ranges()
{
ScRangeList aList(ScRange(1,1,0,6,6,0));
+ aList.DeleteArea(3,3,0,8,4,0);
+
+ CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(3), aList.size());
+ for(SCCOL nCol = 1; nCol <= 6; ++nCol)
+ {
+ for(SCROW nRow = 1; nRow <= 6; ++nRow)
+ {
+ if((nRow == 3 || nRow == 4) && (nCol >= 3))
+ CPPUNIT_ASSERT(!aList.In(ScRange(nCol, nRow, 0)));
+ else
+ CPPUNIT_ASSERT(aList.In(ScRange(nCol, nRow, 0)));
+ }
+ }
+
+ CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(28), aList.GetCellCount());
}
void Test::testDeleteArea_2Ranges()
commit 5f0b2c26ce6854463577058ee1d84fefd1889b2c
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Tue Sep 18 04:58:50 2012 +0200
more tests for ScRangeList::DeleteArea
Change-Id: I1ba3278d8c74c62f28f2b89bec35bc33be477094
diff --git a/sc/qa/unit/rangelst_test.cxx b/sc/qa/unit/rangelst_test.cxx
index 3d6259c..a2289b6 100644
--- a/sc/qa/unit/rangelst_test.cxx
+++ b/sc/qa/unit/rangelst_test.cxx
@@ -21,8 +21,10 @@ public:
virtual void tearDown();
void testDeleteArea_4Ranges();
+ void testDeleteArea_3Ranges();
void testDeleteArea_2Ranges();
void testDeleteArea_2Ranges_Case2();
+ void testDeleteArea_1Range();
void testDeleteArea_0Ranges();
void testUpdateReference_DeleteRow();
@@ -30,8 +32,10 @@ public:
CPPUNIT_TEST_SUITE(Test);
CPPUNIT_TEST(testDeleteArea_4Ranges);
+ CPPUNIT_TEST(testDeleteArea_3Ranges);
CPPUNIT_TEST(testDeleteArea_2Ranges);
CPPUNIT_TEST(testDeleteArea_2Ranges_Case2);
+ CPPUNIT_TEST(testDeleteArea_1Range);
CPPUNIT_TEST(testDeleteArea_0Ranges);
CPPUNIT_TEST(testUpdateReference_DeleteRow);
CPPUNIT_TEST(testUpdateReference_DeleteCol);
@@ -81,6 +85,11 @@ void Test::testDeleteArea_4Ranges()
}
}
+void Test::testDeleteArea_3Ranges()
+{
+ ScRangeList aList(ScRange(1,1,0,6,6,0));
+}
+
void Test::testDeleteArea_2Ranges()
{
ScRangeList aList(ScRange(0,0,0,5,5,5));
@@ -118,6 +127,20 @@ void Test::testDeleteArea_2Ranges_Case2()
CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(4), aList.GetCellCount());
}
+void Test::testDeleteArea_1Range()
+{
+ ScRangeList aList(ScRange(1,1,0,3,3,0));
+ aList.DeleteArea(1,1,0,2,3,0);
+
+ CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(1), aList.size());
+
+ for(SCROW nRow = 1; nRow <= 3; ++nRow)
+ {
+ CPPUNIT_ASSERT(aList.In(ScRange(3,nRow,0)));
+ }
+ CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(3), aList.GetCellCount());
+}
+
void Test::testDeleteArea_0Ranges()
{
ScRangeList aList(ScRange(1,1,0,3,3,0));
commit 59bdd7aef895256c34f81fb77767cb4972d596ae
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Tue Sep 18 02:25:19 2012 +0200
use the typedefs in ScRangeList
Change-Id: If90c068eb4db26203612a54aa3536118650bfb43
diff --git a/sc/source/core/tool/rangelst.cxx b/sc/source/core/tool/rangelst.cxx
index c6b3bfc..7a874e8 100644
--- a/sc/source/core/tool/rangelst.cxx
+++ b/sc/source/core/tool/rangelst.cxx
@@ -434,7 +434,7 @@ bool ScRangeList::UpdateReference(
}
}
- vector<ScRange*>::iterator itr = maRanges.begin(), itrEnd = maRanges.end();
+ iterator itr = maRanges.begin(), itrEnd = maRanges.end();
for (; itr != itrEnd; ++itr)
{
ScRange* pR = *itr;
@@ -781,14 +781,14 @@ void ScRangeList::DeleteArea( SCCOL nCol1, SCROW nRow1, SCTAB nTab1,
const ScRange* ScRangeList::Find( const ScAddress& rAdr ) const
{
- vector<ScRange*>::const_iterator itr = find_if(
+ const_iterator itr = find_if(
maRanges.begin(), maRanges.end(), FindEnclosingRange<ScAddress>(rAdr));
return itr == maRanges.end() ? NULL : *itr;
}
ScRange* ScRangeList::Find( const ScAddress& rAdr )
{
- vector<ScRange*>::iterator itr = find_if(
+ iterator itr = find_if(
maRanges.begin(), maRanges.end(), FindEnclosingRange<ScAddress>(rAdr));
return itr == maRanges.end() ? NULL : *itr;
}
@@ -824,16 +824,16 @@ void ScRangeList::Append( const ScRange& rRange )
bool ScRangeList::Intersects( const ScRange& rRange ) const
{
- vector<ScRange*>::const_iterator itrEnd = maRanges.end();
- vector<ScRange*>::const_iterator itr =
+ const_iterator itrEnd = maRanges.end();
+ const_iterator itr =
find_if(maRanges.begin(), itrEnd, FindIntersectingRange<ScRange>(rRange));
return itr != itrEnd;
}
bool ScRangeList::In( const ScRange& rRange ) const
{
- vector<ScRange*>::const_iterator itrEnd = maRanges.end();
- vector<ScRange*>::const_iterator itr =
+ const_iterator itrEnd = maRanges.end();
+ const_iterator itr =
find_if(maRanges.begin(), itrEnd, FindEnclosingRange<ScRange>(rRange));
return itr != itrEnd;
}
@@ -851,7 +851,7 @@ ScRange* ScRangeList::Remove(size_t nPos)
// Out-of-bound condition. Bail out.
return NULL;
- vector<ScRange*>::iterator itr = maRanges.begin();
+ iterator itr = maRanges.begin();
advance(itr, nPos);
ScRange* p = *itr;
maRanges.erase(itr);
@@ -869,7 +869,7 @@ ScRange ScRangeList::Combine() const
if (maRanges.empty())
return ScRange();
- vector<ScRange*>::const_iterator itr = maRanges.begin(), itrEnd = maRanges.end();
+ const_iterator itr = maRanges.begin(), itrEnd = maRanges.end();
ScRange aRet = **itr;
++itr;
for (; itr != itrEnd; ++itr)
commit f8f449c581c252a8ef5eb02ca2502c7abdd8317d
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Mon Sep 17 22:02:57 2012 +0200
it is better to use ScRangeList::In than Intersects
Change-Id: Idb9839c827729edaa72442f78fbd2fd6561d95c8
diff --git a/sc/qa/unit/rangelst_test.cxx b/sc/qa/unit/rangelst_test.cxx
index f2eea24..3d6259c 100644
--- a/sc/qa/unit/rangelst_test.cxx
+++ b/sc/qa/unit/rangelst_test.cxx
@@ -74,9 +74,9 @@ void Test::testDeleteArea_4Ranges()
for(SCROW nRow = 0; nRow <= 5; ++nRow)
{
if((nCol == 2 || nCol == 3) && ( nRow == 2 || nRow == 3))
- CPPUNIT_ASSERT(!aList.Intersects(ScRange(nCol, nRow, 0)));
+ CPPUNIT_ASSERT(!aList.In(ScRange(nCol, nRow, 0)));
else
- CPPUNIT_ASSERT(aList.Intersects(ScRange(nCol, nRow, 0)));
+ CPPUNIT_ASSERT(aList.In(ScRange(nCol, nRow, 0)));
}
}
}
@@ -96,9 +96,9 @@ void Test::testDeleteArea_2Ranges()
for(SCROW nRow = 0; nRow <= 5; ++nRow)
{
if(nCol>=4 && nRow >= 4)
- CPPUNIT_ASSERT(!aList.Intersects(ScRange(nCol, nRow, 0)));
+ CPPUNIT_ASSERT(!aList.In(ScRange(nCol, nRow, 0)));
else
- CPPUNIT_ASSERT(aList.Intersects(ScRange(nCol, nRow, 0)));
+ CPPUNIT_ASSERT(aList.In(ScRange(nCol, nRow, 0)));
}
}
}
@@ -111,9 +111,9 @@ void Test::testDeleteArea_2Ranges_Case2()
for(SCROW nRow = 1; nRow <= 5; ++nRow)
{
if(nRow == 3)
- CPPUNIT_ASSERT(!aList.Intersects(ScRange(1,3,0)));
+ CPPUNIT_ASSERT(!aList.In(ScRange(1,3,0)));
else
- CPPUNIT_ASSERT(aList.Intersects(ScRange(1,nRow,0)));
+ CPPUNIT_ASSERT(aList.In(ScRange(1,nRow,0)));
}
CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(4), aList.GetCellCount());
}
@@ -141,9 +141,9 @@ void Test::testUpdateReference_DeleteRow()
{
for(SCROW nRow = 1; nRow <= 3; ++nRow)
{
- CPPUNIT_ASSERT(aList.Intersects(ScRange(nCol, nRow, 0)));
+ CPPUNIT_ASSERT(aList.In(ScRange(nCol, nRow, 0)));
}
- CPPUNIT_ASSERT(!aList.Intersects(ScRange(nCol, 4, 0)));
+ CPPUNIT_ASSERT(!aList.In(ScRange(nCol, 4, 0)));
}
CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(12), aList.GetCellCount());
}
@@ -158,9 +158,9 @@ void Test::testUpdateReference_DeleteCol()
{
for(SCCOL nCol = 1; nCol <= 3; ++nCol)
{
- CPPUNIT_ASSERT(aList.Intersects(ScRange(nCol, nRow, 0)));
+ CPPUNIT_ASSERT(aList.In(ScRange(nCol, nRow, 0)));
}
- CPPUNIT_ASSERT(!aList.Intersects(ScRange(4, nRow, 0)));
+ CPPUNIT_ASSERT(!aList.In(ScRange(4, nRow, 0)));
}
CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(12), aList.GetCellCount());
}
commit 011060da4d3532770bfc063dd5034f402a194f30
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Mon Sep 17 21:46:28 2012 +0200
add tests for ScRangeList::UpdateReference
Change-Id: I0461b7a23b4743f6e73e6c771b1b2119ad1bce15
diff --git a/sc/qa/unit/rangelst_test.cxx b/sc/qa/unit/rangelst_test.cxx
index 41d4590..f2eea24 100644
--- a/sc/qa/unit/rangelst_test.cxx
+++ b/sc/qa/unit/rangelst_test.cxx
@@ -33,6 +33,8 @@ public:
CPPUNIT_TEST(testDeleteArea_2Ranges);
CPPUNIT_TEST(testDeleteArea_2Ranges_Case2);
CPPUNIT_TEST(testDeleteArea_0Ranges);
+ CPPUNIT_TEST(testUpdateReference_DeleteRow);
+ CPPUNIT_TEST(testUpdateReference_DeleteCol);
CPPUNIT_TEST_SUITE_END();
@@ -135,11 +137,32 @@ void Test::testUpdateReference_DeleteRow()
bool bUpdated = aList.UpdateReference(URM_INSDEL, m_pDoc, ScRange(0,3,0,MAXCOL,MAXROW,0), 0, -1, 0);
CPPUNIT_ASSERT(bUpdated);
+ for(SCCOL nCol = 1; nCol <= 4; ++nCol)
+ {
+ for(SCROW nRow = 1; nRow <= 3; ++nRow)
+ {
+ CPPUNIT_ASSERT(aList.Intersects(ScRange(nCol, nRow, 0)));
+ }
+ CPPUNIT_ASSERT(!aList.Intersects(ScRange(nCol, 4, 0)));
+ }
+ CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(12), aList.GetCellCount());
}
void Test::testUpdateReference_DeleteCol()
{
+ ScRangeList aList(ScRange(1,1,0,4,4,0));
+ bool bUpdated = aList.UpdateReference(URM_INSDEL, m_pDoc, ScRange(3,0,0,MAXCOL,MAXROW,0), -1, 0, 0);
+ CPPUNIT_ASSERT(bUpdated);
+ for(SCROW nRow = 1; nRow <= 4; ++nRow)
+ {
+ for(SCCOL nCol = 1; nCol <= 3; ++nCol)
+ {
+ CPPUNIT_ASSERT(aList.Intersects(ScRange(nCol, nRow, 0)));
+ }
+ CPPUNIT_ASSERT(!aList.Intersects(ScRange(4, nRow, 0)));
+ }
+ CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(12), aList.GetCellCount());
}
CPPUNIT_TEST_SUITE_REGISTRATION(Test);
More information about the Libreoffice-commits
mailing list