added wxStaticCast() unit test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -20,6 +20,10 @@
|
|||||||
|
|
||||||
#include "wx/defs.h"
|
#include "wx/defs.h"
|
||||||
|
|
||||||
|
// just some classes using wxRTTI for wxStaticCast() test
|
||||||
|
#include "wx/tarstrm.h"
|
||||||
|
#include "wx/zipstrm.h"
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// test class
|
// test class
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
@@ -33,10 +37,12 @@ private:
|
|||||||
CPPUNIT_TEST_SUITE( MiscTestCase );
|
CPPUNIT_TEST_SUITE( MiscTestCase );
|
||||||
CPPUNIT_TEST( Assert );
|
CPPUNIT_TEST( Assert );
|
||||||
CPPUNIT_TEST( Delete );
|
CPPUNIT_TEST( Delete );
|
||||||
|
CPPUNIT_TEST( StaticCast );
|
||||||
CPPUNIT_TEST_SUITE_END();
|
CPPUNIT_TEST_SUITE_END();
|
||||||
|
|
||||||
void Assert();
|
void Assert();
|
||||||
void Delete();
|
void Delete();
|
||||||
|
void StaticCast();
|
||||||
|
|
||||||
DECLARE_NO_COPY_CLASS(MiscTestCase)
|
DECLARE_NO_COPY_CLASS(MiscTestCase)
|
||||||
};
|
};
|
||||||
@@ -93,3 +99,19 @@ void MiscTestCase::Delete()
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MiscTestCase::StaticCast()
|
||||||
|
{
|
||||||
|
wxTarEntry tarEntry;
|
||||||
|
CPPUNIT_ASSERT( wxStaticCast(&tarEntry, wxArchiveEntry) );
|
||||||
|
|
||||||
|
wxArchiveEntry *entry = &tarEntry;
|
||||||
|
CPPUNIT_ASSERT( wxStaticCast(entry, wxTarEntry) );
|
||||||
|
|
||||||
|
wxZipEntry zipEntry;
|
||||||
|
entry = &zipEntry;
|
||||||
|
CPPUNIT_ASSERT( wxStaticCast(entry, wxZipEntry) );
|
||||||
|
|
||||||
|
WX_ASSERT_FAILS_WITH_ASSERT( wxStaticCast(entry, wxTarEntry) );
|
||||||
|
WX_ASSERT_FAILS_WITH_ASSERT( wxStaticCast(&zipEntry, wxTarEntry) );
|
||||||
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user