58 lines
1.2 KiB
C++
58 lines
1.2 KiB
C++
#ifndef TESTFAILURETEST_H
|
|
#define TESTFAILURETEST_H
|
|
|
|
#include <cppunit/extensions/HelperMacros.h>
|
|
|
|
|
|
class TestFailureTest : public CPPUNIT_NS::TestFixture
|
|
{
|
|
CPPUNIT_TEST_SUITE( TestFailureTest );
|
|
CPPUNIT_TEST( testConstructorAndGetters );
|
|
CPPUNIT_TEST( testConstructorAndGettersForError );
|
|
CPPUNIT_TEST_SUITE_END();
|
|
|
|
public:
|
|
TestFailureTest();
|
|
virtual ~TestFailureTest();
|
|
|
|
virtual void setUp();
|
|
virtual void tearDown();
|
|
|
|
void testConstructorAndGetters();
|
|
void testConstructorAndGettersForError();
|
|
|
|
void exceptionDestroyed();
|
|
|
|
private:
|
|
class ObservedException : public CPPUNIT_NS::Exception
|
|
{
|
|
public:
|
|
ObservedException( TestFailureTest *listener ) :
|
|
CPPUNIT_NS::Exception( CPPUNIT_NS::Message("ObservedException" ) ),
|
|
m_listener( listener )
|
|
{
|
|
}
|
|
|
|
virtual ~ObservedException() throw()
|
|
{
|
|
m_listener->exceptionDestroyed();
|
|
}
|
|
private:
|
|
TestFailureTest *m_listener;
|
|
};
|
|
|
|
|
|
TestFailureTest( const TestFailureTest © );
|
|
void operator =( const TestFailureTest © );
|
|
void checkTestFailure( CPPUNIT_NS::Test *test,
|
|
CPPUNIT_NS::Exception *error,
|
|
bool isError );
|
|
|
|
private:
|
|
bool m_exceptionDestroyed;
|
|
};
|
|
|
|
|
|
|
|
#endif // TESTFAILURETEST_H
|