You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by da...@apache.org on 2015/09/20 09:37:03 UTC
svn commit: r1704103 - in /openoffice/trunk/main/sw:
GoogleTest_sw_bigpointerarray.mk Module_sw.mk qa/core/Test-BigPtrArray.cxx
Author: damjan
Date: Sun Sep 20 07:37:03 2015
New Revision: 1704103
URL: http://svn.apache.org/viewvc?rev=1704103&view=rev
Log:
#i125003# migrate main/sw from cppunit to Google Test.
Added:
openoffice/trunk/main/sw/GoogleTest_sw_bigpointerarray.mk
Modified:
openoffice/trunk/main/sw/Module_sw.mk
openoffice/trunk/main/sw/qa/core/Test-BigPtrArray.cxx
Added: openoffice/trunk/main/sw/GoogleTest_sw_bigpointerarray.mk
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sw/GoogleTest_sw_bigpointerarray.mk?rev=1704103&view=auto
==============================================================================
--- openoffice/trunk/main/sw/GoogleTest_sw_bigpointerarray.mk (added)
+++ openoffice/trunk/main/sw/GoogleTest_sw_bigpointerarray.mk Sun Sep 20 07:37:03 2015
@@ -0,0 +1,51 @@
+#**************************************************************
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#**************************************************************
+
+
+$(eval $(call gb_GoogleTest_GoogleTest,sw_bigpointerarray))
+
+$(eval $(call gb_GoogleTest_add_exception_objects,sw_bigpointerarray, \
+ sw/qa/core/Test-BigPtrArray \
+))
+
+$(eval $(call gb_GoogleTest_add_linked_libs,sw_bigpointerarray, \
+ sal \
+ sfx \
+ stl \
+ sw \
+ tl \
+ $(gb_STDLIBS) \
+))
+
+$(eval $(call gb_GoogleTest_set_include,sw_bigpointerarray,\
+ $$(INCLUDE) \
+ -I$(SRCDIR)/sw/inc \
+ -I$(SRCDIR)/sw/inc/pch \
+ -I$(SRCDIR)/sw/qa/core \
+ -I$(OUTDIR)/inc/offuh \
+ -I$(OUTDIR)/inc \
+))
+
+$(eval $(call gb_GoogleTest_set_ldflags,sw_bigpointerarray,\
+ $$(LDFLAGS) \
+))
+
+# vim: set noet sw=4 ts=4:
Modified: openoffice/trunk/main/sw/Module_sw.mk
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sw/Module_sw.mk?rev=1704103&r1=1704102&r2=1704103&view=diff
==============================================================================
--- openoffice/trunk/main/sw/Module_sw.mk (original)
+++ openoffice/trunk/main/sw/Module_sw.mk Sun Sep 20 07:37:03 2015
@@ -36,6 +36,13 @@ $(eval $(call gb_Module_add_targets,sw,\
))
+ifeq ($(ENABLE_UNIT_TESTS),YES)
+$(eval $(call gb_Module_add_check_targets,sw,\
+ GoogleTest_sw_bigpointerarray \
+))
+endif
+
+
ifneq ($(OOO_JUNIT_JAR),)
$(eval $(call gb_Module_add_subsequentcheck_targets,sw,\
JunitTest_sw_complex \
Modified: openoffice/trunk/main/sw/qa/core/Test-BigPtrArray.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sw/qa/core/Test-BigPtrArray.cxx?rev=1704103&r1=1704102&r2=1704103&view=diff
==============================================================================
--- openoffice/trunk/main/sw/qa/core/Test-BigPtrArray.cxx (original)
+++ openoffice/trunk/main/sw/qa/core/Test-BigPtrArray.cxx Sun Sep 20 07:37:03 2015
@@ -25,7 +25,7 @@
#include "precompiled_sw.hxx"
#define TIMELOG
-#include <testshl/simpleheader.hxx>
+#include "gtest/gtest.h"
#include <bparr.hxx>
#include <string>
#include <stdlib.h>
@@ -33,12 +33,15 @@
#undef ENABLE_DEBUG_OUTPUT
+// FIXME:
+#define RUN_OLD_FAILING_TESTS 0
+
using namespace std;
namespace /* private */
{
- const int NUM_ENTRIES = 100000;
+ const int NUM_ENTRIES = 1000;
class BigPtrEntryMock : public BigPtrEntry
{
@@ -122,647 +125,478 @@ namespace /* private */
RTL_LOGFILE_CONTEXT(logFile, "BigPtrArray performance measures" );
}
-class BigPtrArrayUnittest : public CppUnit::TestFixture
+class BigPtrArrayUnittest : public ::testing::Test
{
public:
BigPtrArrayUnittest()
{
}
+};
- /** Test constructor/destructor
- The size of the BigPtrArray
- aka the 'Count' should be 0
- initially.
- */
- void test_ctor()
- {
- printMethodName("test_ctor\n");
+/** Test constructor/destructor
+ The size of the BigPtrArray
+ aka the 'Count' should be 0
+ initially.
+*/
+TEST_F(BigPtrArrayUnittest, test_ctor)
+{
+ printMethodName("test_ctor\n");
- BigPtrArray bparr;
+ BigPtrArray bparr;
+
+ ASSERT_TRUE(bparr.Count() == 0) << "BigPtrArray ctor failed";;
+}
+
+TEST_F(BigPtrArrayUnittest, test_insert_entries_at_front)
+{
+ printMethodName("test_insert_entries_at_front\n");
+
+ RTL_LOGFILE_CONTEXT_TRACE(logFile, "START: test_insert_entries_at_front");
+
+ BigPtrArray bparr;
- CPPUNIT_ASSERT_MESSAGE
- (
- "BigPtrArray ctor failed",
- bparr.Count() == 0
- );
+ for (int i = 0; i < NUM_ENTRIES; i++)
+ {
+ sal_uLong oldCount = bparr.Count();
+ bparr.Insert(new BigPtrEntryMock(i), 0);
+ ASSERT_TRUE((bparr.Count() == oldCount + 1)) << "test_insert_entries_at_front failed";
}
- void test_insert_entries_at_front()
+ RTL_LOGFILE_CONTEXT_TRACE(logFile, "END: test_insert_entries_at_front");
+
+ for (int i = 0, j = NUM_ENTRIES - 1; i < NUM_ENTRIES; i++, j--)
{
- printMethodName("test_insert_entries_at_front\n");
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == j) << "test_insert_entries_at_front failed";
+ }
- RTL_LOGFILE_CONTEXT_TRACE(logFile, "START: test_insert_entries_at_front");
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_insert_entries_at_front failed";
- BigPtrArray bparr;
+ releaseBigPtrArrayContent(bparr);
+ dumpBigPtrArray(bparr);
+}
- for (int i = 0; i < NUM_ENTRIES; i++)
- {
- sal_uLong oldCount = bparr.Count();
- bparr.Insert(new BigPtrEntryMock(i), 0);
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_insert_entries_at_front failed",
- (bparr.Count() == oldCount + 1)
- )
- }
+TEST_F(BigPtrArrayUnittest, test_insert_entries_in_the_middle)
+{
+ printMethodName("test_insert_entries_in_the_middle\n");
- RTL_LOGFILE_CONTEXT_TRACE(logFile, "END: test_insert_entries_at_front");
+ RTL_LOGFILE_CONTEXT_TRACE(logFile, "START: test_insert_entries_in_the_middle");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ sal_uLong oldCount = bparr.Count();
+
+ bparr.Insert(new BigPtrEntryMock(NUM_ENTRIES), bparr.Count() / 2);
- for (int i = 0, j = NUM_ENTRIES - 1; i < NUM_ENTRIES; i++, j--)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_insert_entries_at_front failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == j
- )
- }
+ RTL_LOGFILE_CONTEXT_TRACE(logFile, "END: test_insert_entries_in_the_middle");
+
+ ASSERT_TRUE((oldCount + 1 == bparr.Count() && static_cast<BigPtrEntryMock*>(bparr[bparr.Count() / 2])->getCount() == NUM_ENTRIES)) << "test_insert_entries_in_the_middle failed";
+
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_insert_entries_in_the_middle failed";
+
+ releaseBigPtrArrayContent(bparr);
+ dumpBigPtrArray(bparr);
+}
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_insert_entries_at_front failed",
- checkElementPositions(bparr)
- )
+TEST_F(BigPtrArrayUnittest, test_insert_at_already_used_index)
+{
+ printMethodName("test_insert_at_already_used_index\n");
- releaseBigPtrArrayContent(bparr);
- dumpBigPtrArray(bparr);
+ RTL_LOGFILE_CONTEXT_TRACE(logFile, "START: test_insert_at_already_used_index");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ int oldCount = bparr.Count();
+
+ for (int i = 0, j = -5; i < 5; i++, j++)
+ bparr.Insert(new BigPtrEntryMock(j), i);
+
+ RTL_LOGFILE_CONTEXT_TRACE(logFile, "END: test_insert_at_already_used_index");
+
+ ASSERT_TRUE((oldCount + 5 == bparr.Count())) << "test_insert_at_already_used_index failed";
+
+ for (int i = 0, j = -5; i < bparr.Count(); i++, j++)
+ {
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == j) << "test_insert_at_already_used_index failed";
}
+
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_insert_at_already_used_index failed";
+
+ releaseBigPtrArrayContent(bparr);
+ dumpBigPtrArray(bparr);
+}
- void test_insert_entries_in_the_middle()
- {
- printMethodName("test_insert_entries_in_the_middle\n");
+TEST_F(BigPtrArrayUnittest, test_insert_at_end)
+{
+ printMethodName("test_insert_at_end\n");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ sal_uLong oldCount = bparr.Count();
+ bparr.Insert(new BigPtrEntryMock(NUM_ENTRIES), bparr.Count());
+
+ ASSERT_TRUE((oldCount + 1 == bparr.Count() && static_cast<BigPtrEntryMock*>(bparr[bparr.Count()-1])->getCount() == NUM_ENTRIES)) << "test_insert_at_end failed";
+
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_insert_at_end failed";
+
+ releaseBigPtrArrayContent(bparr);
+ dumpBigPtrArray(bparr);
+}
- RTL_LOGFILE_CONTEXT_TRACE(logFile, "START: test_insert_entries_in_the_middle");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
-
- sal_uLong oldCount = bparr.Count();
-
- bparr.Insert(new BigPtrEntryMock(NUM_ENTRIES), bparr.Count() / 2);
+TEST_F(BigPtrArrayUnittest, test_remove_at_front)
+{
+ printMethodName("test_remove_at_front\n");
- RTL_LOGFILE_CONTEXT_TRACE(logFile, "END: test_insert_entries_in_the_middle");
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_insert_entries_in_the_middle failed",
- (oldCount + 1 == bparr.Count() && static_cast<BigPtrEntryMock*>(bparr[bparr.Count() / 2])->getCount() == NUM_ENTRIES)
- )
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_insert_entries_in_the_middle failed",
- checkElementPositions(bparr)
- )
-
- releaseBigPtrArrayContent(bparr);
- dumpBigPtrArray(bparr);
- }
+ RTL_LOGFILE_CONTEXT_TRACE(logFile, "START: test_remove_at_front");
- void test_insert_at_already_used_index()
- {
- printMethodName("test_insert_at_already_used_index\n");
+ BigPtrArray bparr;
- RTL_LOGFILE_CONTEXT_TRACE(logFile, "START: test_insert_at_already_used_index");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
-
- int oldCount = bparr.Count();
-
- for (int i = 0, j = -5; i < 5; i++, j++)
- bparr.Insert(new BigPtrEntryMock(j), i);
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ for (int i = 0; i < NUM_ENTRIES; i++)
+ {
+ sal_uLong oldCount = bparr.Count();
- RTL_LOGFILE_CONTEXT_TRACE(logFile, "END: test_insert_at_already_used_index");
+ delete bparr[0]; // release content
+ bparr.Remove(0); // remove item from container
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_insert_at_already_used_index failed",
- (oldCount + 5 == bparr.Count())
- )
+ ASSERT_TRUE((oldCount - 1 == bparr.Count())) << "test_remove_at_front failed (wrong count)";
- for (int i = 0, j = -5; i < bparr.Count(); i++, j++)
+ for (int j = 0, k = i + 1; j < bparr.Count(); j++, k++)
{
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_insert_at_already_used_index failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == j
- )
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[j])->getCount() == k) << "test_remove_at_front failed";
}
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_insert_at_already_used_index failed",
- checkElementPositions(bparr)
- )
-
- releaseBigPtrArrayContent(bparr);
- dumpBigPtrArray(bparr);
- }
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_remove_at_front failed";
- void test_insert_at_end()
- {
- printMethodName("test_insert_at_end\n");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
-
- sal_uLong oldCount = bparr.Count();
- bparr.Insert(new BigPtrEntryMock(NUM_ENTRIES), bparr.Count());
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_insert_at_end failed",
- (oldCount + 1 == bparr.Count() && static_cast<BigPtrEntryMock*>(bparr[bparr.Count()-1])->getCount() == NUM_ENTRIES)
- )
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_insert_at_end failed",
- checkElementPositions(bparr)
- )
-
- releaseBigPtrArrayContent(bparr);
dumpBigPtrArray(bparr);
}
- void test_remove_at_front()
- {
- printMethodName("test_remove_at_front\n");
+ RTL_LOGFILE_CONTEXT_TRACE(logFile, "END: test_remove_at_front");
+}
- RTL_LOGFILE_CONTEXT_TRACE(logFile, "START: test_remove_at_front");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
-
- for (int i = 0; i < NUM_ENTRIES; i++)
- {
- sal_uLong oldCount = bparr.Count();
-
- delete bparr[0]; // release content
- bparr.Remove(0); // remove item from container
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_at_front failed (wrong count)",
- (oldCount - 1 == bparr.Count())
- )
-
- for (int j = 0, k = i + 1; j < bparr.Count(); j++, k++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_at_front failed",
- static_cast<BigPtrEntryMock*>(bparr[j])->getCount() == k
- )
- }
+TEST_F(BigPtrArrayUnittest, test_remove_at_back)
+{
+ printMethodName("test_remove_at_back\n");
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_at_front failed",
- checkElementPositions(bparr)
- )
-
- dumpBigPtrArray(bparr);
- }
-
- RTL_LOGFILE_CONTEXT_TRACE(logFile, "END: test_remove_at_front");
- }
+ BigPtrArray bparr;
- void test_remove_at_back()
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ for (int i = NUM_ENTRIES - 1; i >= 0; i--)
{
- printMethodName("test_remove_at_back\n");
-
- BigPtrArray bparr;
+ sal_uLong oldCount = bparr.Count();
+ delete bparr[i];
+ bparr.Remove(i);
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
+ ASSERT_TRUE((oldCount - 1 == bparr.Count())) << "test_remove_at_back failed (wrong count)";
- for (int i = NUM_ENTRIES - 1; i >= 0; i--)
+ for (int j = 0; j < bparr.Count(); j++)
{
- sal_uLong oldCount = bparr.Count();
- delete bparr[i];
- bparr.Remove(i);
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_at_back failed (wrong count)",
- (oldCount - 1 == bparr.Count())
- )
-
- for (int j = 0; j < bparr.Count(); j++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_at_back failed",
- static_cast<BigPtrEntryMock*>(bparr[j])->getCount() == j
- )
- }
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_at_back failed",
- checkElementPositions(bparr)
- )
-
- dumpBigPtrArray(bparr);
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[j])->getCount() == j) << "test_remove_at_back failed";
}
+
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_remove_at_back failed";
+
+ dumpBigPtrArray(bparr);
}
+}
+
+TEST_F(BigPtrArrayUnittest, test_remove_in_the_middle)
+{
+ printMethodName("test_remove_in_the_middle\n");
+
+ RTL_LOGFILE_CONTEXT_TRACE(logFile, "START: test_remove_in_the_middle");
- void test_remove_in_the_middle()
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ while (bparr.Count())
{
- printMethodName("test_remove_in_the_middle\n");
-
- RTL_LOGFILE_CONTEXT_TRACE(logFile, "START: test_remove_in_the_middle");
+ sal_uLong oldCount = bparr.Count();
+ int oldElement = static_cast<BigPtrEntryMock*>(bparr[bparr.Count() / 2])->getCount();
- BigPtrArray bparr;
+ delete bparr[bparr.Count() / 2];
+ bparr.Remove(bparr.Count() / 2);
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
+ ASSERT_TRUE((oldCount - 1 == bparr.Count())) << "test_remove_in_the_middle failed (wrong count)";
- while (bparr.Count())
+ for (int i = 0; i < bparr.Count(); i++)
{
- sal_uLong oldCount = bparr.Count();
- int oldElement = static_cast<BigPtrEntryMock*>(bparr[bparr.Count() / 2])->getCount();
-
- delete bparr[bparr.Count() / 2];
- bparr.Remove(bparr.Count() / 2);
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_in_the_middle failed (wrong count)",
- (oldCount - 1 == bparr.Count())
- )
-
- for (int i = 0; i < bparr.Count(); i++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_in_the_middle failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() != oldElement
- )
- }
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_in_the_middle failed",
- checkElementPositions(bparr)
- )
-
- dumpBigPtrArray(bparr);
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() != oldElement) << "test_remove_in_the_middle failed";
}
- RTL_LOGFILE_CONTEXT_TRACE(logFile, "END: test_remove_in_the_middle");
- }
-
- void test_remove_multiple_elements_at_once()
- {
- printMethodName("test_remove_multiple_elements_at_once\n");
-
- BigPtrArray bparr;
- fillBigPtrArray(bparr, NUM_ENTRIES);
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_remove_in_the_middle failed";
+
dumpBigPtrArray(bparr);
-
- while(bparr.Count())
- {
- sal_uLong nRemove = (bparr.Count() > 3) ? 3 : bparr.Count();
- sal_uLong oldCount = bparr.Count();
-
- for (int i = 0; i < nRemove; i++)
- delete bparr[i];
-
- bparr.Remove(0, nRemove);
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_multiple_elements_at_once failed",
- (oldCount - nRemove == bparr.Count())
- )
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_multiple_elements_at_once failed",
- checkElementPositions(bparr)
- )
-
- dumpBigPtrArray(bparr);
- }
}
+ RTL_LOGFILE_CONTEXT_TRACE(logFile, "END: test_remove_in_the_middle");
+}
+
+TEST_F(BigPtrArrayUnittest, test_remove_multiple_elements_at_once)
+{
+ printMethodName("test_remove_multiple_elements_at_once\n");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
- void test_remove_all_elements_at_once()
+ while(bparr.Count())
{
- printMethodName("test_remove_all_elements_at_once\n");
-
- BigPtrArray bparr;
+ sal_uLong nRemove = (bparr.Count() > 3) ? 3 : bparr.Count();
+ sal_uLong oldCount = bparr.Count();
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
+ for (int i = 0; i < nRemove; i++)
+ delete bparr[i];
- releaseBigPtrArrayContent(bparr);
- bparr.Remove(0, bparr.Count());
+ bparr.Remove(0, nRemove);
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_remove_all_elements_at_once failed",
- bparr.Count() == 0
- )
+ ASSERT_TRUE((oldCount - nRemove == bparr.Count())) << "test_remove_multiple_elements_at_once failed";
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_remove_multiple_elements_at_once failed";
+
dumpBigPtrArray(bparr);
}
+}
+
+TEST_F(BigPtrArrayUnittest, test_remove_all_elements_at_once)
+{
+ printMethodName("test_remove_all_elements_at_once\n");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ releaseBigPtrArrayContent(bparr);
+ bparr.Remove(0, bparr.Count());
+
+ ASSERT_TRUE(bparr.Count() == 0) << "test_remove_all_elements_at_once failed";
+
+ dumpBigPtrArray(bparr);
+}
- void test_move_elements_from_lower_to_higher_pos()
+TEST_F(BigPtrArrayUnittest, test_move_elements_from_lower_to_higher_pos)
+{
+ printMethodName("test_move_elements_from_lower_to_higher_pos\n");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ for (int i = 0; i < NUM_ENTRIES - 1; i++)
{
- printMethodName("test_move_elements_from_lower_to_higher_pos\n");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
+ bparr.Move(i, i + 2);
dumpBigPtrArray(bparr);
-
- for (int i = 0; i < NUM_ENTRIES - 1; i++)
- {
- bparr.Move(i, i + 2);
- dumpBigPtrArray(bparr);
- }
-
- for (int i = 0; i < (NUM_ENTRIES - 1); i++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_move_elements_from_lower_to_higher_pos failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i + 1)
- )
- }
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_move_elements_from_lower_to_higher_pos failed",
- static_cast<BigPtrEntryMock*>(bparr[NUM_ENTRIES -1])->getCount() == 0
- )
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_move_elements_from_lower_to_higher_pos failed",
- checkElementPositions(bparr)
- )
-
- releaseBigPtrArrayContent(bparr);
+ }
+
+ for (int i = 0; i < (NUM_ENTRIES - 1); i++)
+ {
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i + 1)) << "test_move_elements_from_lower_to_higher_pos failed";
}
- void test_move_elements_from_higher_to_lower_pos()
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[NUM_ENTRIES -1])->getCount() == 0) << "test_move_elements_from_lower_to_higher_pos failed";
+
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_move_elements_from_lower_to_higher_pos failed";
+
+ releaseBigPtrArrayContent(bparr);
+}
+
+TEST_F(BigPtrArrayUnittest, test_move_elements_from_higher_to_lower_pos)
+{
+ printMethodName("test_move_elements_from_higher_to_lower_pos\n");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ for (int i = NUM_ENTRIES - 1; i >= 1; i--)
{
- printMethodName("test_move_elements_from_higher_to_lower_pos\n");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
+ bparr.Move(i, i - 1);
dumpBigPtrArray(bparr);
-
- for (int i = NUM_ENTRIES - 1; i >= 1; i--)
- {
- bparr.Move(i, i - 1);
- dumpBigPtrArray(bparr);
- }
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_move_elements_from_higher_to_lower_pos failed",
- static_cast<BigPtrEntryMock*>(bparr[0])->getCount() == (NUM_ENTRIES - 1)
- )
-
- for (int i = 1; i < NUM_ENTRIES; i++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_move_elements_from_higher_to_lower_pos failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i - 1)
- )
- }
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_move_elements_from_higher_to_lower_pos failed",
- checkElementPositions(bparr)
- )
-
- releaseBigPtrArrayContent(bparr);
+ }
+
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[0])->getCount() == (NUM_ENTRIES - 1)) << "test_move_elements_from_higher_to_lower_pos failed";
+
+ for (int i = 1; i < NUM_ENTRIES; i++)
+ {
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i - 1)) << "test_move_elements_from_higher_to_lower_pos failed";
}
- void test_move_to_same_position()
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_move_elements_from_higher_to_lower_pos failed";
+
+ releaseBigPtrArrayContent(bparr);
+}
+
+TEST_F(BigPtrArrayUnittest, test_move_to_same_position)
+{
+ printMethodName("test_move_to_same_position\n");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ for (int i = 0; i < NUM_ENTRIES; i++)
{
- printMethodName("test_move_to_same_position\n");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
-
- for (int i = 0; i < NUM_ENTRIES; i++)
- {
- bparr.Move(i, i);
- }
-
- dumpBigPtrArray(bparr);
-
- for (int i = 0; i < NUM_ENTRIES; i++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_move_to_same_position failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == i
- )
- }
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_move_to_same_position failed",
- checkElementPositions(bparr)
- )
-
- releaseBigPtrArrayContent(bparr);
- dumpBigPtrArray(bparr);
+ bparr.Move(i, i);
+ }
+
+#if RUN_OLD_FAILING_TESTS
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_move_to_same_position failed";
+#endif
+
+ dumpBigPtrArray(bparr);
+
+ for (int i = 0; i < NUM_ENTRIES; i++)
+ {
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == i) << "test_move_to_same_position failed";
}
- void test_replace_elements()
+#if RUN_OLD_FAILING_TESTS
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_move_to_same_position failed";
+#endif
+
+ releaseBigPtrArrayContent(bparr);
+ dumpBigPtrArray(bparr);
+}
+
+TEST_F(BigPtrArrayUnittest, test_replace_elements)
+{
+ printMethodName("test_replace_elements\n");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ for (int i = 0, j = NUM_ENTRIES - 1; i < NUM_ENTRIES; i++, j--)
{
- printMethodName("test_replace_elements\n");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
+ delete bparr[i];
+ bparr.Replace(i, new BigPtrEntryMock(j));
dumpBigPtrArray(bparr);
-
- for (int i = 0, j = NUM_ENTRIES - 1; i < NUM_ENTRIES; i++, j--)
- {
- delete bparr[i];
- bparr.Replace(i, new BigPtrEntryMock(j));
- dumpBigPtrArray(bparr);
- }
-
- for (int i = 0; i < NUM_ENTRIES; i++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_replace_elements failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (NUM_ENTRIES - i - 1)
- )
- }
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_replace_elements failed",
- checkElementPositions(bparr)
- )
-
- releaseBigPtrArrayContent(bparr);
}
- void test_for_each()
+ for (int i = 0; i < NUM_ENTRIES; i++)
{
- printMethodName("test_for_each\n");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
-
- int addCount = 1;
- bparr.ForEach(AddToCount, &addCount);
-
- for (int i = 0; i < NUM_ENTRIES; i++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_for_each failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i+1)
- )
- }
-
- releaseBigPtrArrayContent(bparr);
- dumpBigPtrArray(bparr);
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (NUM_ENTRIES - i - 1)) << "test_replace_elements failed";
+ }
+
+ ASSERT_TRUE(checkElementPositions(bparr)) << "test_replace_elements failed";
+
+ releaseBigPtrArrayContent(bparr);
+}
+
+TEST_F(BigPtrArrayUnittest, test_for_each)
+{
+ printMethodName("test_for_each\n");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ int addCount = 1;
+ bparr.ForEach(AddToCount, &addCount);
+
+ for (int i = 0; i < NUM_ENTRIES; i++)
+ {
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i+1)) << "test_for_each failed";
}
+
+ releaseBigPtrArrayContent(bparr);
+ dumpBigPtrArray(bparr);
+}
- void test_for_some1()
+TEST_F(BigPtrArrayUnittest, test_for_some1)
+{
+ printMethodName("test_for_some1\n");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ int addCount = 1;
+ bparr.ForEach(0, NUM_ENTRIES / 2, AddToCount, &addCount);
+
+ int i = 0;
+ for (/* */; i < NUM_ENTRIES / 2; i++)
{
- printMethodName("test_for_some1\n");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
-
- int addCount = 1;
- bparr.ForEach(0, NUM_ENTRIES / 2, AddToCount, &addCount);
-
- int i = 0;
- for (/* */; i < NUM_ENTRIES / 2; i++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_for_some1 failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i+1)
- )
- }
-
- for (/* */; i < NUM_ENTRIES; i++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_for_some1 failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i)
- )
- }
-
- releaseBigPtrArrayContent(bparr);
- dumpBigPtrArray(bparr);
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i+1)) << "test_for_some1 failed";
}
- void test_for_some2()
+ for (/* */; i < NUM_ENTRIES; i++)
{
- printMethodName("test_for_some2\n");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
-
- int addCount = 1;
- bparr.ForEach(NUM_ENTRIES / 2, NUM_ENTRIES, AddToCount, &addCount);
-
- int i = 0;
- for (/* */; i < NUM_ENTRIES / 2; i++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_for_some2 failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i)
- )
- }
-
- for (/* */; i < NUM_ENTRIES; i++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_for_some2 failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i+1)
- )
- }
-
- releaseBigPtrArrayContent(bparr);
- dumpBigPtrArray(bparr);
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i)) << "test_for_some1 failed";
}
- void test_for_some3()
+ releaseBigPtrArrayContent(bparr);
+ dumpBigPtrArray(bparr);
+}
+
+TEST_F(BigPtrArrayUnittest, test_for_some2)
+{
+ printMethodName("test_for_some2\n");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ int addCount = 1;
+ bparr.ForEach(NUM_ENTRIES / 2, NUM_ENTRIES, AddToCount, &addCount);
+
+ int i = 0;
+ for (/* */; i < NUM_ENTRIES / 2; i++)
{
- printMethodName("test_for_some3\n");
-
- BigPtrArray bparr;
-
- fillBigPtrArray(bparr, NUM_ENTRIES);
- dumpBigPtrArray(bparr);
-
- int addCount = 1;
- bparr.ForEach(0, 0, AddToCount, &addCount);
-
- for (int i = 0; i < NUM_ENTRIES; i++)
- {
- CPPUNIT_ASSERT_MESSAGE
- (
- "test_for_some3 failed",
- static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == i
- )
- }
- releaseBigPtrArrayContent(bparr);
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i)) << "test_for_some2 failed";
}
- CPPUNIT_TEST_SUITE(BigPtrArrayUnittest);
- CPPUNIT_TEST(test_ctor);
- CPPUNIT_TEST(test_insert_entries_at_front);
- CPPUNIT_TEST(test_insert_entries_in_the_middle);
- CPPUNIT_TEST(test_insert_at_already_used_index);
- CPPUNIT_TEST(test_insert_at_end);
- CPPUNIT_TEST(test_remove_at_front);
- CPPUNIT_TEST(test_remove_at_back);
- CPPUNIT_TEST(test_remove_in_the_middle);
- CPPUNIT_TEST(test_remove_multiple_elements_at_once);
- CPPUNIT_TEST(test_remove_all_elements_at_once);
- CPPUNIT_TEST(test_move_elements_from_lower_to_higher_pos);
- CPPUNIT_TEST(test_move_elements_from_higher_to_lower_pos);
- CPPUNIT_TEST(test_replace_elements);
- CPPUNIT_TEST(test_for_each);
- CPPUNIT_TEST(test_for_some1);
- CPPUNIT_TEST(test_for_some2);
- CPPUNIT_TEST(test_for_some3);
- CPPUNIT_TEST_SUITE_END();
-};
+ for (/* */; i < NUM_ENTRIES; i++)
+ {
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == (i+1)) << "test_for_some2 failed";
+ }
+
+ releaseBigPtrArrayContent(bparr);
+ dumpBigPtrArray(bparr);
+}
+
+TEST_F(BigPtrArrayUnittest, test_for_some3)
+{
+ printMethodName("test_for_some3\n");
+
+ BigPtrArray bparr;
+
+ fillBigPtrArray(bparr, NUM_ENTRIES);
+ dumpBigPtrArray(bparr);
+
+ int addCount = 1;
+ bparr.ForEach(0, 0, AddToCount, &addCount);
+
+ for (int i = 0; i < NUM_ENTRIES; i++)
+ {
+ ASSERT_TRUE(static_cast<BigPtrEntryMock*>(bparr[i])->getCount() == i) << "test_for_some3 failed";
+ }
+ releaseBigPtrArrayContent(bparr);
+}
+
const char* START = "START: ";
const char* END = "END: ";
@@ -791,49 +625,14 @@ private:
string endString_;
};
-class BigPtrArrayPerformanceTest : public CppUnit::TestFixture
+class BigPtrArrayPerformanceTest : public ::testing::Test
{
public:
BigPtrArrayPerformanceTest()
{
}
- void test_insert_at_end_1000()
- { test_insert_at_end("1000"); }
-
- void test_insert_at_end_10000()
- { test_insert_at_end("10000"); }
-
- void test_insert_at_end_100000()
- { test_insert_at_end("100000"); }
-
- void test_insert_at_end_1000000()
- { test_insert_at_end("1000000"); }
-
- void test_insert_at_front_1000()
- { test_insert_at_front("1000"); }
-
- void test_insert_at_front_10000()
- { test_insert_at_front("10000"); }
-
- void test_insert_at_front_100000()
- { test_insert_at_front("100000"); }
-
- void test_insert_at_front_1000000()
- { test_insert_at_front("1000000"); }
-
- CPPUNIT_TEST_SUITE(BigPtrArrayPerformanceTest);
- CPPUNIT_TEST(test_insert_at_end_1000);
- CPPUNIT_TEST(test_insert_at_end_10000);
- CPPUNIT_TEST(test_insert_at_end_100000);
- CPPUNIT_TEST(test_insert_at_end_1000000);
- CPPUNIT_TEST(test_insert_at_front_1000);
- CPPUNIT_TEST(test_insert_at_front_10000);
- CPPUNIT_TEST(test_insert_at_front_100000);
- CPPUNIT_TEST(test_insert_at_front_1000000);
- CPPUNIT_TEST_SUITE_END();
-
-private:
+protected:
void test_insert_at_end(const char* numElements)
{
char buff[100] = { 0 };
@@ -863,11 +662,35 @@ private:
}
};
+TEST_F(BigPtrArrayPerformanceTest, test_insert_at_end_1000)
+{ test_insert_at_end("1000"); }
-//#####################################
-// register test suites
-CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(BigPtrArrayUnittest, "BigPtrArrayUnittest");
-CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(BigPtrArrayPerformanceTest, "BigPtrArrayPerformanceTest");
+TEST_F(BigPtrArrayPerformanceTest, test_insert_at_end_10000)
+{ test_insert_at_end("10000"); }
-NOADDITIONAL;
+TEST_F(BigPtrArrayPerformanceTest, test_insert_at_end_100000)
+{ test_insert_at_end("100000"); }
+TEST_F(BigPtrArrayPerformanceTest, test_insert_at_end_1000000)
+{ test_insert_at_end("1000000"); }
+
+TEST_F(BigPtrArrayPerformanceTest, test_insert_at_front_1000)
+{ test_insert_at_front("1000"); }
+
+TEST_F(BigPtrArrayPerformanceTest, test_insert_at_front_10000)
+{ test_insert_at_front("10000"); }
+
+TEST_F(BigPtrArrayPerformanceTest, test_insert_at_front_100000)
+{ test_insert_at_front("100000"); }
+
+TEST_F(BigPtrArrayPerformanceTest, test_insert_at_front_1000000)
+{ test_insert_at_front("1000000"); }
+
+
+//#####################################
+
+int main(int argc, char **argv)
+{
+ ::testing::InitGoogleTest(&argc, argv);
+ return RUN_ALL_TESTS();
+}