summaryrefslogtreecommitdiff
path: root/examples/cppunittest/TestSuiteTest.cpp
diff options
context:
space:
mode:
authorBaptiste Lepilleur <gaiacrtn@free.fr>2001-06-11 18:56:23 +0000
committerBaptiste Lepilleur <gaiacrtn@free.fr>2001-06-11 18:56:23 +0000
commit0c5051a8acf83fd77a6094177eb0711d3f90d997 (patch)
treea0757b1cae952576f4497d40ccf3aa70a2bf84c8 /examples/cppunittest/TestSuiteTest.cpp
parent021d0a2611777a06d948735e0ad36cb90ffd413b (diff)
downloadcppunit-0c5051a8acf83fd77a6094177eb0711d3f90d997.tar.gz
Examples/cppunittest/TestResultTest.
examples/cppunittest/TestResultTest.*: renamed TestListenerTest.* * examples/cppunittest/*: added unit tests for: HelperMacros, TestAssert, TestCaller, TestCase, TestFailure, TestResult, TestSuite, TestDecoratorTest, TestSetUp, RepeatedTestTest, Orthodox, Exception.
Diffstat (limited to 'examples/cppunittest/TestSuiteTest.cpp')
-rw-r--r--examples/cppunittest/TestSuiteTest.cpp136
1 files changed, 136 insertions, 0 deletions
diff --git a/examples/cppunittest/TestSuiteTest.cpp b/examples/cppunittest/TestSuiteTest.cpp
new file mode 100644
index 0000000..b13c7ac
--- /dev/null
+++ b/examples/cppunittest/TestSuiteTest.cpp
@@ -0,0 +1,136 @@
+#include "TestSuiteTest.h"
+#include "FailingTestCase.h"
+#include <cppunit/TestResult.h>
+
+
+CPPUNIT_TEST_SUITE_REGISTRATION( TestSuiteTest );
+
+
+TestSuiteTest::TestSuiteTest()
+{
+}
+
+
+TestSuiteTest::~TestSuiteTest()
+{
+}
+
+
+void
+TestSuiteTest::setUp()
+{
+ m_suite = new CppUnit::TestSuite();
+ m_result = new CppUnit::TestResult();
+}
+
+
+void
+TestSuiteTest::tearDown()
+{
+ delete m_result;
+ delete m_suite;
+}
+
+
+void
+TestSuiteTest::testConstructor()
+{
+ std::string name( "MySuite" );
+ CppUnit::TestSuite suite( name );
+ CPPUNIT_ASSERT_EQUAL( name, suite.getName() );
+}
+
+
+void
+TestSuiteTest::testCountTestCasesWithNoTest()
+{
+ CPPUNIT_ASSERT_EQUAL( 0, m_suite->countTestCases() );
+}
+
+
+void
+TestSuiteTest::testCountTestCasesWithTwoTests()
+{
+ m_suite->addTest( new CppUnit::TestCase( "test1" ) );
+ m_suite->addTest( new CppUnit::TestCase( "test2" ) );
+
+ CPPUNIT_ASSERT_EQUAL( 2, m_suite->countTestCases() );
+}
+
+
+void
+TestSuiteTest::testCountTestCasesWithSubSuite()
+{
+ CppUnit::TestSuite *subSuite = new CppUnit::TestSuite( "SubSuite");
+ subSuite->addTest( new CppUnit::TestCase( "test1" ) );
+ subSuite->addTest( new CppUnit::TestCase( "test2" ) );
+
+ m_suite->addTest( new CppUnit::TestCase( "test3" ) );
+ m_suite->addTest( subSuite );
+
+ CPPUNIT_ASSERT_EQUAL( 3, m_suite->countTestCases() );
+}
+
+
+void
+TestSuiteTest::testRunWithOneTest()
+{
+ FailingTestCase *test = new FailingTestCase();
+ m_suite->addTest( test );
+
+ m_suite->run( m_result );
+ test->verify();
+ checkResult( 0, 0, 1 );
+}
+
+
+void
+TestSuiteTest::testRunWithOneTestAndSubSuite()
+{
+ CppUnit::TestSuite *subSuite = new CppUnit::TestSuite( "SubSuite");
+
+ FailingTestCase *test2 = new FailingTestCase();
+ subSuite->addTest( test2 );
+
+ FailingTestCase *test3 = new FailingTestCase();
+ subSuite->addTest( test3 );
+
+ FailingTestCase *test = new FailingTestCase();
+ m_suite->addTest( test );
+ m_suite->addTest( subSuite );
+
+ m_suite->run( m_result );
+ checkResult( 0, 0, 3 );
+ test->verify();
+ test2->verify();
+ test3->verify();
+}
+
+
+void
+TestSuiteTest::testGetTests()
+{
+ m_suite->addTest( new CppUnit::TestCase( "test1" ) );
+ m_suite->addTest( new CppUnit::TestCase( "test2" ) );
+ CPPUNIT_ASSERT_EQUAL( 2, int(m_suite->getTests().size()) );
+}
+
+
+void
+TestSuiteTest::testDeleteContents()
+{
+ m_suite->addTest( new CppUnit::TestCase( "test2" ) );
+ m_suite->deleteContents();
+ CPPUNIT_ASSERT_EQUAL( 0, int(m_suite->getTests().size()) );
+}
+
+
+void
+TestSuiteTest::checkResult( int failures,
+ int errors,
+ int testsRun )
+{
+ CPPUNIT_ASSERT_EQUAL( testsRun, m_result->runTests() );
+ CPPUNIT_ASSERT_EQUAL( errors, m_result->testErrors() );
+ CPPUNIT_ASSERT_EQUAL( failures, m_result->testFailures() );
+}