|
Packit Service |
e31359 |
#include <cppunit/config/SourcePrefix.h>
|
|
Packit Service |
e31359 |
#include "FailureException.h"
|
|
Packit Service |
e31359 |
#include "HelperMacrosTest.h"
|
|
Packit Service |
e31359 |
#include "HelperSuite.h"
|
|
Packit Service |
e31359 |
#include "MockTestCase.h"
|
|
Packit Service |
e31359 |
#include "SubclassedTestCase.h"
|
|
Packit Service |
e31359 |
#include <cppunit/TestResult.h>
|
|
Packit Service |
e31359 |
#include <memory>
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
/* Note:
|
|
Packit Service |
e31359 |
- no unit test for CPPUNIT_TEST_SUITE_REGISTRATION...
|
|
Packit Service |
e31359 |
*/
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class FailTestFixture : public CPPUNIT_NS::TestFixture
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE( FailTestFixture );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_FAIL( testFail );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE_END();
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
void testFail()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
CPPUNIT_ASSERT_MESSAGE( "Failure", false );
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class FailToFailTestFixture : public CPPUNIT_NS::TestFixture
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE( FailToFailTestFixture );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_FAIL( testFailToFail );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE_END();
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
void testFailToFail()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class ExceptionTestFixture : public CPPUNIT_NS::TestFixture
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE( ExceptionTestFixture );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_EXCEPTION( testException, FailureException );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE_END();
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
void testException()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
throw FailureException();
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class ExceptionNotCaughtTestFixture : public CPPUNIT_NS::TestFixture
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE( ExceptionNotCaughtTestFixture );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_EXCEPTION( testExceptionNotCaught, FailureException );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE_END();
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
void testExceptionNotCaught()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class CustomsTestTestFixture : public CPPUNIT_NS::TestFixture
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE( CustomsTestTestFixture );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE_ADD_CUSTOM_TESTS( addCustomTests );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE_END();
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
static void addCustomTests( TestSuiteBuilderContextType &context )
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
MockTestCase *test1 = new MockTestCase( context.getTestNameFor( "myCustomTest1" ) );
|
|
Packit Service |
e31359 |
test1->makeRunTestThrow();
|
|
Packit Service |
e31359 |
MockTestCase *test2 = new MockTestCase( context.getTestNameFor( "myCustomTest2" ) );
|
|
Packit Service |
e31359 |
context.addTest( test1 );
|
|
Packit Service |
e31359 |
context.addTest( test2 );
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class ParameterizedTestFixture : public CPPUNIT_NS::TestFixture
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE(ParameterizedTestFixture);
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_PARAMETERIZED(testMethod, {1, 2, 3, 4});
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE_END();
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
void testMethod(int /*val*/)
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
#undef TEST_ADD_N_MOCK
|
|
Packit Service |
e31359 |
#define TEST_ADD_N_MOCK( totalCount ) \
|
|
Packit Service |
e31359 |
{ \
|
|
Packit Service |
e31359 |
for ( int count = (totalCount); count > 0; --count ) \
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE_ADD_TEST( \
|
|
Packit Service |
e31359 |
new MockTestCase( context.getTestNameFor( "dummyName" ) ) ); \
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class AddTestTestFixture : public CPPUNIT_NS::TestFixture
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE( AddTestTestFixture );
|
|
Packit Service |
e31359 |
TEST_ADD_N_MOCK( 7 );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE_END();
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( HelperMacrosTest,
|
|
Packit Service |
e31359 |
helperSuiteName() );
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
HelperMacrosTest::HelperMacrosTest()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
HelperMacrosTest::~HelperMacrosTest()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
void
|
|
Packit Service |
e31359 |
HelperMacrosTest::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 |
HelperMacrosTest::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 |
HelperMacrosTest::testNoSubclassing()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
std::unique_ptr<CPPUNIT_NS::TestSuite> suite( BaseTestCase::suite() );
|
|
Packit Service |
e31359 |
CPPUNIT_ASSERT_EQUAL( 1, suite->countTestCases() );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedStartTestCall( 1 );
|
|
Packit Service |
e31359 |
m_testListener->setExpectNoFailure();
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
suite->run( m_result );
|
|
Packit Service |
e31359 |
m_testListener->verify();
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
void
|
|
Packit Service |
e31359 |
HelperMacrosTest::testSubclassing()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
std::unique_ptr<CPPUNIT_NS::TestSuite> suite( SubclassedTestCase::suite() );
|
|
Packit Service |
e31359 |
CPPUNIT_ASSERT_EQUAL( 2, suite->countTestCases() );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedStartTestCall( 2 );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedAddFailureCall( 1 );
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
suite->run( m_result );
|
|
Packit Service |
e31359 |
m_testListener->verify();
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
void
|
|
Packit Service |
e31359 |
HelperMacrosTest::testFail()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
std::unique_ptr<CPPUNIT_NS::TestSuite> suite( FailTestFixture::suite() );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedStartTestCall( 1 );
|
|
Packit Service |
e31359 |
m_testListener->setExpectNoFailure();
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
suite->run( m_result );
|
|
Packit Service |
e31359 |
m_testListener->verify();
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
void
|
|
Packit Service |
e31359 |
HelperMacrosTest::testFailToFail()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
std::unique_ptr<CPPUNIT_NS::TestSuite> suite( FailToFailTestFixture::suite() );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedStartTestCall( 1 );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedAddFailureCall( 1 );
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
suite->run( m_result );
|
|
Packit Service |
e31359 |
m_testListener->verify();
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
void
|
|
Packit Service |
e31359 |
HelperMacrosTest::testException()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
std::unique_ptr<CPPUNIT_NS::TestSuite> suite( ExceptionTestFixture::suite() );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedStartTestCall( 1 );
|
|
Packit Service |
e31359 |
m_testListener->setExpectNoFailure();
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
suite->run( m_result );
|
|
Packit Service |
e31359 |
m_testListener->verify();
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
void
|
|
Packit Service |
e31359 |
HelperMacrosTest::testExceptionNotCaught()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
std::unique_ptr<CPPUNIT_NS::TestSuite> suite( ExceptionNotCaughtTestFixture::suite() );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedStartTestCall( 1 );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedAddFailureCall( 1 );
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
suite->run( m_result );
|
|
Packit Service |
e31359 |
m_testListener->verify();
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
void
|
|
Packit Service |
e31359 |
HelperMacrosTest::testCustomTests()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
std::unique_ptr<CPPUNIT_NS::TestSuite> suite( CustomsTestTestFixture::suite() );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedStartTestCall( 2 );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedAddFailureCall( 1 );
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
suite->run( m_result );
|
|
Packit Service |
e31359 |
m_testListener->verify();
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
void
|
|
Packit Service |
e31359 |
HelperMacrosTest::testAddTest()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
std::unique_ptr<CPPUNIT_NS::TestSuite> suite( AddTestTestFixture::suite() );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedStartTestCall( 7 );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedAddFailureCall( 0 );
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
suite->run( m_result );
|
|
Packit Service |
e31359 |
m_testListener->verify();
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
void
|
|
Packit Service |
e31359 |
HelperMacrosTest::testParameterizedTests()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
std::unique_ptr<CPPUNIT_NS::TestSuite> suite( ParameterizedTestFixture::suite() );
|
|
Packit Service |
e31359 |
m_testListener->setExpectedStartTestCall(4);
|
|
Packit Service |
e31359 |
m_testListener->setExpectedAddFailureCall( 0 );
|
|
Packit Service |
e31359 |
suite->run(m_result);
|
|
Packit Service |
e31359 |
m_testListener->verify();
|
|
Packit Service |
e31359 |
}
|