X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b804f9924d38b16d5cd72ba6c55195f9b1cc5896..31f125ed00f3391ba78371c7aa0b4919427050d8:/tests/log/logtest.cpp diff --git a/tests/log/logtest.cpp b/tests/log/logtest.cpp index 7d859c7d00..4ee9b2b38f 100644 --- a/tests/log/logtest.cpp +++ b/tests/log/logtest.cpp @@ -19,6 +19,7 @@ #ifndef WX_PRECOMP #include "wx/log.h" + #include "wx/filefn.h" #endif // WX_PRECOMP #include "wx/scopeguard.h" @@ -193,7 +194,7 @@ private: // register in the unnamed registry so that these tests are run by default CPPUNIT_TEST_SUITE_REGISTRATION( LogTestCase ); -// also include in it's own registry so that these tests can be run alone +// also include in its own registry so that these tests can be run alone CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( LogTestCase, "LogTestCase" ); void LogTestCase::setUp() @@ -341,17 +342,24 @@ void LogTestCase::CompatLogger2() void LogTestCase::SysError() { wxString s; - wxLogSysError("Success"); - CPPUNIT_ASSERT( m_log->GetLog(wxLOG_Error).StartsWith("Success (", &s) ); - CPPUNIT_ASSERT( s.StartsWith("error 0") ); wxLogSysError(17, "Error"); CPPUNIT_ASSERT( m_log->GetLog(wxLOG_Error).StartsWith("Error (", &s) ); - CPPUNIT_ASSERT( s.StartsWith("error 17") ); + WX_ASSERT_MESSAGE( ("Error message is \"(%s\"", s), s.StartsWith("error 17") ); + + // The last error code seems to be set somewhere in MinGW CRT as its value + // is just not what we expect (ERROR_INVALID_PARAMETER instead of 0 and 0 + // instead of ERROR_FILE_NOT_FOUND) so exclude the tests which rely on last + // error being preserved for this compiler. +#ifndef __MINGW32__ + wxLogSysError("Success"); + CPPUNIT_ASSERT( m_log->GetLog(wxLOG_Error).StartsWith("Success (", &s) ); + WX_ASSERT_MESSAGE( ("Error message is \"(%s\"", s), s.StartsWith("error 0") ); wxOpen("no-such-file", 0, 0); wxLogSysError("Not found"); CPPUNIT_ASSERT( m_log->GetLog(wxLOG_Error).StartsWith("Not found (", &s) ); WX_ASSERT_MESSAGE( ("Error message is \"(%s\"", s), s.StartsWith("error 2") ); +#endif // __MINGW32__ }