summaryrefslogtreecommitdiff
path: root/examples/cppunittest/TestFailureTest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/cppunittest/TestFailureTest.cpp')
-rw-r--r--examples/cppunittest/TestFailureTest.cpp56
1 files changed, 56 insertions, 0 deletions
diff --git a/examples/cppunittest/TestFailureTest.cpp b/examples/cppunittest/TestFailureTest.cpp
new file mode 100644
index 0000000..c6b5736
--- /dev/null
+++ b/examples/cppunittest/TestFailureTest.cpp
@@ -0,0 +1,56 @@
+#include "TestFailureTest.h"
+#include <cppunit/TestFailure.h>
+#include <cppunit/Exception.h>
+
+
+CPPUNIT_TEST_SUITE_REGISTRATION( TestFailureTest );
+
+
+TestFailureTest::TestFailureTest()
+{
+}
+
+
+TestFailureTest::~TestFailureTest()
+{
+}
+
+
+void
+TestFailureTest::setUp()
+{
+ m_exceptionDestroyed = false;
+}
+
+
+void
+TestFailureTest::tearDown()
+{
+}
+
+
+void
+TestFailureTest::testConstructorAndGetters()
+{
+ CppUnit::TestCase test;
+ CppUnit::Exception *error = new ObservedException( this );
+ checkTestFailure( &test, error );
+ CPPUNIT_ASSERT( m_exceptionDestroyed );
+}
+
+
+void
+TestFailureTest::exceptionDestroyed()
+{
+ m_exceptionDestroyed = true;
+}
+
+
+void
+TestFailureTest::checkTestFailure( CppUnit::Test *test,
+ CppUnit::Exception *error )
+{
+ CppUnit::TestFailure failure( test, error );
+ CPPUNIT_ASSERT_EQUAL( test, failure.failedTest() );
+ CPPUNIT_ASSERT_EQUAL( error, failure.thrownException() );
+}