X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ea32fa53af6c7e8de7a8214f1df0245c63ae8a64..0b3e395a5c7a61c6bcf08e2c340a7f2de8ba3c37:/tests/any/anytest.cpp diff --git a/tests/any/anytest.cpp b/tests/any/anytest.cpp index 0bf92c2c94..5c5c9e16ee 100644 --- a/tests/any/anytest.cpp +++ b/tests/any/anytest.cpp @@ -36,12 +36,7 @@ private: CPPUNIT_TEST( CheckType ); CPPUNIT_TEST( Equality ); CPPUNIT_TEST( As ); - // FIXME: One of these tests might result in heap corruption under PPC - // OS X, disable them to at least allow the subsequent tests to - // run as otherwise the test program just crashes. -#ifndef __WXOSX__ CPPUNIT_TEST( GetAs ); -#endif // __WXOSX__ CPPUNIT_TEST( Null ); CPPUNIT_TEST( wxVariantConversions ); CPPUNIT_TEST( CustomTemplateSpecialization ); @@ -311,6 +306,14 @@ void wxAnyTestCase::Null() void wxAnyTestCase::GetAs() { + // FIXME: Parts of this test result in heap corruption in wxOSX/PPC builds + // for some unknown reason, disable them to at least allow running + // the other tests. +#if defined(__WXOSX__) && defined(__POWERPC__) + #warning "Disabling some tests under PPC, please consider debugging them." + #define wxDONT_TEST +#endif // OSX/PPC + // // Test dynamic conversion bool res; @@ -361,7 +364,9 @@ void wxAnyTestCase::GetAs() // should not work. CPPUNIT_ASSERT(!m_anyStringString1.GetAs(&l)); CPPUNIT_ASSERT(!m_anyStringString1.GetAs(&ul)); +#ifndef wxDONT_TEST CPPUNIT_ASSERT(!m_anyStringString1.GetAs(&f)); +#endif // !wxDONT_TEST CPPUNIT_ASSERT(!m_anyStringString1.GetAs(&b)); // Let's test some other conversions from string that should work. @@ -374,9 +379,11 @@ void wxAnyTestCase::GetAs() res = anyString.GetAs(&ul); CPPUNIT_ASSERT(res); CPPUNIT_ASSERT_EQUAL(ul, static_cast(15)); +#ifndef wxDONT_TEST res = anyString.GetAs(&f); CPPUNIT_ASSERT(res); CPPUNIT_ASSERT_DOUBLES_EQUAL(f, 15.0, FEQ_DELTA); +#endif // !wxDONT_TEST anyString = "TRUE"; res = anyString.GetAs(&b); CPPUNIT_ASSERT(res); @@ -386,6 +393,7 @@ void wxAnyTestCase::GetAs() CPPUNIT_ASSERT(res); CPPUNIT_ASSERT(b == false); +#ifndef wxDONT_TEST // Conversions from bool type res = m_anyBool1.GetAs(&l); CPPUNIT_ASSERT(res); @@ -411,6 +419,7 @@ void wxAnyTestCase::GetAs() res = s.ToDouble(&d2); CPPUNIT_ASSERT(res); CPPUNIT_ASSERT_DOUBLES_EQUAL(d2, TEST_FLOAT_CONST, FEQ_DELTA); +#endif // !wxDONT_TEST }