Blame examples/cppunittest/TestSuiteTest.cpp

Packit 8c9aa0
#include "CoreSuite.h"
Packit 8c9aa0
#include "TestSuiteTest.h"
Packit 8c9aa0
#include <cppunit/TestResult.h>
Packit 8c9aa0
#include "MockTestCase.h"
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( TestSuiteTest,
Packit 8c9aa0
                                       coreSuiteName() );
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
TestSuiteTest::TestSuiteTest()
Packit 8c9aa0
{
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
TestSuiteTest::~TestSuiteTest()
Packit 8c9aa0
{
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::setUp()
Packit 8c9aa0
{
Packit 8c9aa0
  m_suite = new CPPUNIT_NS::TestSuite();
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::tearDown()
Packit 8c9aa0
{
Packit 8c9aa0
  delete m_suite;
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testConstructor()
Packit 8c9aa0
{
Packit 8c9aa0
  std::string name( "MySuite" );
Packit 8c9aa0
  CPPUNIT_NS::TestSuite suite( name );
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( name, suite.getName() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testCountTestCasesWithNoTest()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( 0, m_suite->countTestCases() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testCountTestCasesWithTwoTests()
Packit 8c9aa0
{
Packit 8c9aa0
  MockTestCase *case1 = new MockTestCase( "test1" );
Packit 8c9aa0
  case1->setExpectedCountTestCasesCall();
Packit 8c9aa0
  MockTestCase *case2 = new MockTestCase( "test2" );
Packit 8c9aa0
  case2->setExpectedCountTestCasesCall();
Packit 8c9aa0
  m_suite->addTest( case1 );
Packit 8c9aa0
  m_suite->addTest( case2 );
Packit 8c9aa0
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( 2, m_suite->countTestCases() );
Packit 8c9aa0
  case1->verify();
Packit 8c9aa0
  case2->verify();
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testCountTestCasesWithSubSuite()
Packit 8c9aa0
{
Packit 8c9aa0
  MockTestCase *case1 = new MockTestCase( "test1" );
Packit 8c9aa0
  case1->setExpectedCountTestCasesCall();
Packit 8c9aa0
  MockTestCase *case2 = new MockTestCase( "test2" );
Packit 8c9aa0
  case2->setExpectedCountTestCasesCall();
Packit 8c9aa0
  MockTestCase *case3 = new MockTestCase( "test3" );
Packit 8c9aa0
  case3->setExpectedCountTestCasesCall();
Packit 8c9aa0
  CPPUNIT_NS::TestSuite *subSuite = new CPPUNIT_NS::TestSuite( "SubSuite");
Packit 8c9aa0
  subSuite->addTest( case1 );
Packit 8c9aa0
  subSuite->addTest( case2 );
Packit 8c9aa0
  m_suite->addTest( case3 );
Packit 8c9aa0
  m_suite->addTest( subSuite );
Packit 8c9aa0
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( 3, m_suite->countTestCases() );
Packit 8c9aa0
  case1->verify();
Packit 8c9aa0
  case2->verify();
Packit 8c9aa0
  case3->verify();
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testRunWithOneTest()
Packit 8c9aa0
{
Packit 8c9aa0
  MockTestCase *case1 = new MockTestCase( "test1" );
Packit 8c9aa0
  case1->setExpectedRunTestCall();
Packit 8c9aa0
  m_suite->addTest( case1 );
Packit 8c9aa0
Packit 8c9aa0
  CPPUNIT_NS::TestResult result;
Packit 8c9aa0
  m_suite->run( &result );
Packit 8c9aa0
Packit 8c9aa0
  case1->verify();
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testRunWithOneTestAndSubSuite()
Packit 8c9aa0
{
Packit 8c9aa0
  MockTestCase *case1 = new MockTestCase( "test1" );
Packit 8c9aa0
  case1->setExpectedRunTestCall();
Packit 8c9aa0
  MockTestCase *case2 = new MockTestCase( "test2" );
Packit 8c9aa0
  case2->setExpectedRunTestCall();
Packit 8c9aa0
  MockTestCase *case3 = new MockTestCase( "test3" );
Packit 8c9aa0
  case3->setExpectedRunTestCall();
Packit 8c9aa0
  CPPUNIT_NS::TestSuite *subSuite = new CPPUNIT_NS::TestSuite( "SubSuite");
Packit 8c9aa0
  subSuite->addTest( case1 );
Packit 8c9aa0
  subSuite->addTest( case2 );
Packit 8c9aa0
  m_suite->addTest( case3 );
Packit 8c9aa0
  m_suite->addTest( subSuite);
Packit 8c9aa0
Packit 8c9aa0
  CPPUNIT_NS::TestResult result;
Packit 8c9aa0
  m_suite->run( &result );
Packit 8c9aa0
Packit 8c9aa0
  case1->verify();
Packit 8c9aa0
  case2->verify();
Packit 8c9aa0
  case3->verify();
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testGetTests()
Packit 8c9aa0
{
Packit 8c9aa0
  m_suite->addTest( new CPPUNIT_NS::TestCase( "test1" ) );
Packit 8c9aa0
  m_suite->addTest( new CPPUNIT_NS::TestCase( "test2" ) );
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( 2, int(m_suite->getTests().size()) );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testDeleteContents()
Packit 8c9aa0
{
Packit 8c9aa0
  m_suite->addTest( new CPPUNIT_NS::TestCase( "test2" ) );
Packit 8c9aa0
  m_suite->deleteContents();
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( 0, int(m_suite->getTests().size()) );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testGetChildTestCount()
Packit 8c9aa0
{
Packit 8c9aa0
  m_suite->addTest( new CPPUNIT_NS::TestCase( "test1" ) );
Packit 8c9aa0
  m_suite->addTest( new CPPUNIT_NS::TestCase( "test2" ) );
Packit 8c9aa0
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( 2, m_suite->getChildTestCount() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testGetChildTestAt()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::TestCase *test1 = new CPPUNIT_NS::TestCase( "test1" );
Packit 8c9aa0
  CPPUNIT_NS::TestCase *test2 = new CPPUNIT_NS::TestCase( "test2" );
Packit 8c9aa0
  m_suite->addTest( test1 );
Packit 8c9aa0
  m_suite->addTest( test2 );
Packit 8c9aa0
Packit 8c9aa0
  CPPUNIT_ASSERT( test1 == m_suite->getChildTestAt(0) );
Packit 8c9aa0
  CPPUNIT_ASSERT( test2 == m_suite->getChildTestAt(1) );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testGetChildTestAtThrow1()
Packit 8c9aa0
{
Packit 8c9aa0
  m_suite->getChildTestAt(-1);
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
TestSuiteTest::testGetChildTestAtThrow2()
Packit 8c9aa0
{
Packit 8c9aa0
  m_suite->getChildTestAt(0);
Packit 8c9aa0
}