2004-11-22 05:00:19 +00:00
|
|
|
#include "wx/wxprec.h"
|
|
|
|
#include "wx/cppunit.h"
|
2006-03-31 17:42:26 +00:00
|
|
|
|
|
|
|
// define wxHAVE_U_ESCAPE if the compiler supports \uxxxx character constants
|
|
|
|
#if (defined(__VISUALC__) && (__VISUALC__ >= 1300)) || \
|
|
|
|
(defined(__GNUC__) && (__GNUC__ >= 3))
|
|
|
|
#define wxHAVE_U_ESCAPE
|
|
|
|
#endif
|
2008-12-21 02:28:55 +00:00
|
|
|
|
|
|
|
// thrown when assert fails in debug build
|
|
|
|
class TestAssertFailure { };
|
|
|
|
|
|
|
|
// macro to use for the functions which are supposed to fail an assertion
|
|
|
|
#ifdef __WXDEBUG__
|
|
|
|
// some old cppunit versions don't define CPPUNIT_ASSERT_THROW so roll our
|
|
|
|
// own
|
|
|
|
#define WX_ASSERT_FAILS_WITH_ASSERT(cond) \
|
|
|
|
{ \
|
|
|
|
bool throwsAssert = false; \
|
|
|
|
try { cond ; } \
|
|
|
|
catch ( const TestAssertFailure& ) { throwsAssert = true; } \
|
|
|
|
if ( !throwsAssert ) \
|
|
|
|
CPPUNIT_FAIL("expected assertion not generated"); \
|
|
|
|
}
|
|
|
|
#else
|
|
|
|
// there are no assertions in non-debug build so just check that it fails
|
|
|
|
#define WX_ASSERT_FAILS_WITH_ASSERT(cond) CPPUNIT_ASSERT(!(cond))
|
|
|
|
#endif
|
|
|
|
|
2009-01-16 16:21:50 +00:00
|
|
|
// these functions can be used to hook into wxApp event processing and are
|
|
|
|
// currently used by the events propagation test
|
|
|
|
typedef int (*FilterEventFunc)(wxEvent&);
|
|
|
|
typedef bool (*ProcessEventFunc)(wxEvent&);
|
|
|
|
|
|
|
|
extern void SetFilterEventFunc(FilterEventFunc func);
|
|
|
|
extern void SetProcessEventFunc(ProcessEventFunc func);
|