diff options
Diffstat (limited to 'examples/cppunittest/TestFailureTest.h')
-rw-r--r-- | examples/cppunittest/TestFailureTest.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/examples/cppunittest/TestFailureTest.h b/examples/cppunittest/TestFailureTest.h new file mode 100644 index 0000000..9e5e297 --- /dev/null +++ b/examples/cppunittest/TestFailureTest.h @@ -0,0 +1,54 @@ +#ifndef TESTFAILURETEST_H +#define TESTFAILURETEST_H + +#include <cppunit/extensions/HelperMacros.h> + + +class TestFailureTest : public CppUnit::TestCase +{ + CPPUNIT_TEST_SUITE( TestFailureTest ); + CPPUNIT_TEST( testConstructorAndGetters ); + CPPUNIT_TEST_SUITE_END(); + +public: + TestFailureTest(); + virtual ~TestFailureTest(); + + virtual void setUp(); + virtual void tearDown(); + + void testConstructorAndGetters(); + + void exceptionDestroyed(); + +private: + class ObservedException : public CppUnit::Exception + { + public: + ObservedException( TestFailureTest *listener ) : + CppUnit::Exception( "ObservedException" ), + m_listener( listener ) + { + } + + virtual ~ObservedException() + { + m_listener->exceptionDestroyed(); + } + private: + TestFailureTest *m_listener; + }; + + + TestFailureTest( const TestFailureTest © ); + void operator =( const TestFailureTest © ); + void checkTestFailure( CppUnit::Test *test, + CppUnit::Exception *error ); + +private: + bool m_exceptionDestroyed; +}; + + + +#endif // TESTFAILURETEST_H |