X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0468a58a4b32a075ded69e2a7d0e9746e283cfbe..875f82b1b6bd918566b77e0968c49372658144fc:/tests/testprec.h diff --git a/tests/testprec.h b/tests/testprec.h index 84edfc45eb..923d45fc06 100644 --- a/tests/testprec.h +++ b/tests/testprec.h @@ -8,10 +8,33 @@ #endif // thrown when assert fails in debug build -class TestAssertFailure { }; +class TestAssertFailure +{ +public: + TestAssertFailure(const wxString& file, + int line, + const wxString& func, + const wxString& cond, + const wxString& msg) + : m_file(file), + m_line(line), + m_func(func), + m_cond(cond), + m_msg(msg) + { + } + + const wxString m_file; + const int m_line; + const wxString m_func; + const wxString m_cond; + const wxString m_msg; + + wxDECLARE_NO_ASSIGN_CLASS(TestAssertFailure); +}; // macro to use for the functions which are supposed to fail an assertion -#ifdef __WXDEBUG__ +#if wxDEBUG_LEVEL // some old cppunit versions don't define CPPUNIT_ASSERT_THROW so roll our // own #define WX_ASSERT_FAILS_WITH_ASSERT(cond) \ @@ -23,7 +46,16 @@ class TestAssertFailure { }; CPPUNIT_FAIL("expected assertion not generated"); \ } #else - // there are no assertions in non-debug build so just check that it fails + // there are no assertions in this build so just check that it fails #define WX_ASSERT_FAILS_WITH_ASSERT(cond) CPPUNIT_ASSERT(!(cond)) #endif +// these functions can be used to hook into wxApp event processing and are +// currently used by the events propagation test +class WXDLLIMPEXP_FWD_BASE wxEvent; + +typedef int (*FilterEventFunc)(wxEvent&); +typedef bool (*ProcessEventFunc)(wxEvent&); + +extern void SetFilterEventFunc(FilterEventFunc func); +extern void SetProcessEventFunc(ProcessEventFunc func);