git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59740
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
+// just some classes using wxRTTI for wxStaticCast() test
+#include "wx/tarstrm.h"
+#include "wx/zipstrm.h"
+
// ----------------------------------------------------------------------------
// test class
// ----------------------------------------------------------------------------
// ----------------------------------------------------------------------------
// test class
// ----------------------------------------------------------------------------
CPPUNIT_TEST_SUITE( MiscTestCase );
CPPUNIT_TEST( Assert );
CPPUNIT_TEST( Delete );
CPPUNIT_TEST_SUITE( MiscTestCase );
CPPUNIT_TEST( Assert );
CPPUNIT_TEST( Delete );
+ CPPUNIT_TEST( StaticCast );
CPPUNIT_TEST_SUITE_END();
void Assert();
void Delete();
CPPUNIT_TEST_SUITE_END();
void Assert();
void Delete();
DECLARE_NO_COPY_CLASS(MiscTestCase)
};
DECLARE_NO_COPY_CLASS(MiscTestCase)
};
+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) );
+}
+