Blame examples/cppunittest/TestCaseTest.cpp

Packit Service e31359
#include "CoreSuite.h"
Packit Service e31359
#include "FailureException.h"
Packit Service e31359
#include "MockTestCase.h"
Packit Service e31359
#include "TestCaseTest.h"
Packit Service e31359
#include <cppunit/TestResult.h>
Packit Service e31359
Packit Service e31359
/*
Packit Service e31359
 - test have been done to check exception management in run(). other 
Packit Service e31359
   tests need to be added to check the other aspect of TestCase.
Packit Service e31359
 */
Packit Service e31359
Packit Service e31359
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( TestCaseTest,
Packit Service e31359
                                       coreSuiteName() );
Packit Service e31359
Packit Service e31359
Packit Service e31359
TestCaseTest::TestCaseTest()
Packit Service e31359
{
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
TestCaseTest::~TestCaseTest()
Packit Service e31359
{
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::setUp()
Packit Service e31359
{
Packit Service e31359
  m_testListener = new MockTestListener( "mock-testlistener" );
Packit Service e31359
  m_result = new CPPUNIT_NS::TestResult();
Packit Service e31359
  m_result->addListener( m_testListener );
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::tearDown()
Packit Service e31359
{
Packit Service e31359
  delete m_result;
Packit Service e31359
  delete m_testListener;
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::testSetUpFailure()
Packit Service e31359
{
Packit Service e31359
  checkFailure( true, false, false );
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::testRunTestFailure()
Packit Service e31359
{
Packit Service e31359
  checkFailure( false, true, false );
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::testTearDownFailure()
Packit Service e31359
{
Packit Service e31359
  checkFailure( false, false, true );
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::testFailAll()
Packit Service e31359
{
Packit Service e31359
  checkFailure( true, true, true );
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::testNoFailure()
Packit Service e31359
{
Packit Service e31359
  checkFailure( false, false, false );
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::checkFailure( bool failSetUp, 
Packit Service e31359
                            bool failRunTest,
Packit Service e31359
                            bool failTearDown )
Packit Service e31359
{
Packit Service e31359
  try
Packit Service e31359
  {
Packit Service e31359
    MockTestCase testCase( "mock-test" );
Packit Service e31359
    if ( failSetUp )
Packit Service e31359
      testCase.makeSetUpThrow();
Packit Service e31359
    if ( failRunTest )
Packit Service e31359
      testCase.makeRunTestThrow();
Packit Service e31359
    if ( failTearDown )
Packit Service e31359
      testCase.makeTearDownThrow();
Packit Service e31359
    testCase.setExpectedSetUpCall( 1 );
Packit Service e31359
    testCase.setExpectedRunTestCall( failSetUp ? 0 : 1 );
Packit Service e31359
    testCase.setExpectedTearDownCall( failSetUp ? 0 : 1 );
Packit Service e31359
    
Packit Service e31359
    testCase.run( m_result );
Packit Service e31359
Packit Service e31359
    testCase.verify();
Packit Service e31359
  }
Packit Service e31359
  catch ( FailureException & )
Packit Service e31359
  {
Packit Service e31359
    CPPUNIT_ASSERT_MESSAGE( "exception should have been caught", false );
Packit Service e31359
  }
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::testCountTestCases()
Packit Service e31359
{
Packit Service e31359
  CPPUNIT_NS::TestCase test;
Packit Service e31359
  CPPUNIT_ASSERT_EQUAL( 1, test.countTestCases() );
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::testDefaultConstructor()
Packit Service e31359
{
Packit Service e31359
  CPPUNIT_NS::TestCase test;
Packit Service e31359
  CPPUNIT_ASSERT_EQUAL( std::string(""), test.getName() );
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::testConstructorWithName()
Packit Service e31359
{
Packit Service e31359
  std::string testName( "TestName" );
Packit Service e31359
  CPPUNIT_NS::TestCase test( testName );
Packit Service e31359
  CPPUNIT_ASSERT_EQUAL( testName, test.getName() );
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::testTwoRun()
Packit Service e31359
{
Packit Service e31359
  MockTestCase test1( "mocktest1" );
Packit Service e31359
  test1.makeRunTestThrow();
Packit Service e31359
  m_testListener->setExpectedStartTestCall( 2 );
Packit Service e31359
  m_testListener->setExpectedAddFailureCall( 2 );
Packit Service e31359
  m_testListener->setExpectedEndTestCall( 2 );
Packit Service e31359
Packit Service e31359
  test1.run( m_result );
Packit Service e31359
  test1.run( m_result );
Packit Service e31359
Packit Service e31359
  m_testListener->verify();
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::testGetChildTestCount()
Packit Service e31359
{
Packit Service e31359
  CPPUNIT_NS::TestCase test( "test" );
Packit Service e31359
  CPPUNIT_ASSERT_EQUAL( 0, test.getChildTestCount() );
Packit Service e31359
}
Packit Service e31359
Packit Service e31359
Packit Service e31359
void 
Packit Service e31359
TestCaseTest::testGetChildTestAtThrow()
Packit Service e31359
{
Packit Service e31359
  CPPUNIT_NS::TestCase test( "test" );
Packit Service e31359
  test.getChildTestAt( 0 );
Packit Service e31359
}