]> git.saurik.com Git - wxWidgets.git/blobdiff - tests/any/anytest.cpp
Fix memory leak in wxXmlNode::operator=().
[wxWidgets.git] / tests / any / anytest.cpp
index 6fb1a880781b94d3d20ef2c9fccd9fcc593cf51a..5c5c9e16ee9ca2c93529577e799a7370d82da453 100644 (file)
@@ -306,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;
@@ -352,15 +360,13 @@ void wxAnyTestCase::GetAs()
     CPPUNIT_ASSERT(res);
     CPPUNIT_ASSERT(b == true);
 
-    // FIXME: Something in this test results in heap corruption under PPC
-    //        OS X, disable it to at least allow the subsequent tests to run as
-    //        otherwise the test program just crashes.
-#ifndef __WXOSX__
     // Conversions from default "abc" string to other types
     // 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.
@@ -373,9 +379,11 @@ void wxAnyTestCase::GetAs()
     res = anyString.GetAs(&ul);
     CPPUNIT_ASSERT(res);
     CPPUNIT_ASSERT_EQUAL(ul, static_cast<unsigned long>(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);
@@ -385,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);
@@ -410,7 +419,7 @@ void wxAnyTestCase::GetAs()
     res = s.ToDouble(&d2);
     CPPUNIT_ASSERT(res);
     CPPUNIT_ASSERT_DOUBLES_EQUAL(d2, TEST_FLOAT_CONST, FEQ_DELTA);
-#endif // __WXOSX__
+#endif // !wxDONT_TEST
 }