From cc14bd00586cb5107f39c77704163e847cdb2e01 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 22 Mar 2009 21:04:28 +0000 Subject: [PATCH] added wxStaticCast() unit test git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- tests/misc/misctests.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/tests/misc/misctests.cpp b/tests/misc/misctests.cpp index 3ead0b38ec..9e42f1cca3 100644 --- a/tests/misc/misctests.cpp +++ b/tests/misc/misctests.cpp @@ -20,6 +20,10 @@ #include "wx/defs.h" +// just some classes using wxRTTI for wxStaticCast() test +#include "wx/tarstrm.h" +#include "wx/zipstrm.h" + // ---------------------------------------------------------------------------- // test class // ---------------------------------------------------------------------------- @@ -33,10 +37,12 @@ private: CPPUNIT_TEST_SUITE( MiscTestCase ); CPPUNIT_TEST( Assert ); CPPUNIT_TEST( Delete ); + CPPUNIT_TEST( StaticCast ); CPPUNIT_TEST_SUITE_END(); void Assert(); void Delete(); + void StaticCast(); DECLARE_NO_COPY_CLASS(MiscTestCase) }; @@ -93,3 +99,19 @@ void MiscTestCase::Delete() #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) ); +} + -- 2.45.2