added swap() for the other arrays too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55550 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -557,28 +557,44 @@ void ArraysTestCase::Alloc()
|
||||
CPPUNIT_ASSERT_EQUAL( 9, a[1] );
|
||||
}
|
||||
|
||||
void ArraysTestCase::Swap()
|
||||
namespace
|
||||
{
|
||||
wxArrayString a1, a2;
|
||||
|
||||
template <typename A, typename T>
|
||||
void DoTestSwap(T v1, T v2, T v3,
|
||||
A * WXUNUSED(dummyUglyVC6Workaround))
|
||||
{
|
||||
A a1, a2;
|
||||
a1.swap(a2);
|
||||
CPPUNIT_ASSERT( a1.empty() && a2.empty() );
|
||||
|
||||
a1.push_back("Foo");
|
||||
a1.push_back(v1);
|
||||
a1.swap(a2);
|
||||
CPPUNIT_ASSERT( a1.empty() );
|
||||
CPPUNIT_ASSERT_EQUAL( 1, a2.size() );
|
||||
|
||||
a1.push_back("Bar");
|
||||
a1.push_back("Baz");
|
||||
a1.push_back(v2);
|
||||
a1.push_back(v3);
|
||||
a2.swap(a1);
|
||||
CPPUNIT_ASSERT_EQUAL( 1, a1.size() );
|
||||
CPPUNIT_ASSERT_EQUAL( 2, a2.size() );
|
||||
CPPUNIT_ASSERT_EQUAL( v1, a1[0] );
|
||||
CPPUNIT_ASSERT_EQUAL( v3, a2[1] );
|
||||
|
||||
a1.swap(a2);
|
||||
CPPUNIT_ASSERT_EQUAL( 2, a1.size() );
|
||||
CPPUNIT_ASSERT_EQUAL( 1, a2.size() );
|
||||
}
|
||||
|
||||
} // anonymous namespace
|
||||
|
||||
void ArraysTestCase::Swap()
|
||||
{
|
||||
DoTestSwap("Foo", "Bar", "Baz", (wxArrayString *)NULL);
|
||||
DoTestSwap(1, 10, 100, (wxArrayInt *)NULL);
|
||||
DoTestSwap(6, 28, 496, (wxArrayLong *)NULL);
|
||||
}
|
||||
|
||||
void ArraysTestCase::TestSTL()
|
||||
{
|
||||
wxArrayInt list1;
|
||||
|
Reference in New Issue
Block a user