134 lines
2.8 KiB
C++
134 lines
2.8 KiB
C++
#include "CoreSuite.h"
|
|
#include "TestTest.h"
|
|
|
|
|
|
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( TestTest,
|
|
coreSuiteName() );
|
|
|
|
|
|
TestTest::TestTest() :
|
|
CPPUNIT_NS::TestFixture()
|
|
{
|
|
}
|
|
|
|
|
|
TestTest::~TestTest()
|
|
{
|
|
}
|
|
|
|
|
|
void
|
|
TestTest::setUp()
|
|
{
|
|
m_suite = new CPPUNIT_NS::TestSuite( "suite" );
|
|
m_test1 = new MockTestCase( "test1" );
|
|
m_test2 = new MockTestCase( "test2" );
|
|
m_suite->addTest( m_test1 );
|
|
m_suite->addTest( m_test2 );
|
|
|
|
m_path = new CPPUNIT_NS::TestPath();
|
|
}
|
|
|
|
|
|
void
|
|
TestTest::tearDown()
|
|
{
|
|
delete m_suite;
|
|
delete m_path;
|
|
}
|
|
|
|
|
|
void
|
|
TestTest::testFindTestPathPointerThis()
|
|
{
|
|
CPPUNIT_ASSERT( m_test1->findTestPath( m_test1, *m_path ) );
|
|
CPPUNIT_ASSERT_EQUAL( 1, m_path->getTestCount() );
|
|
CPPUNIT_ASSERT( m_test1 == m_path->getChildTest() );
|
|
|
|
m_path->removeTests();
|
|
|
|
CPPUNIT_ASSERT( m_suite->findTestPath( m_suite, *m_path ) );
|
|
CPPUNIT_ASSERT_EQUAL( 1, m_path->getTestCount() );
|
|
CPPUNIT_ASSERT( m_suite == m_path->getChildTest() );
|
|
}
|
|
|
|
|
|
void
|
|
TestTest::testFindTestPathPointer()
|
|
{
|
|
CPPUNIT_ASSERT( m_suite->findTestPath( m_test1, *m_path ) );
|
|
CPPUNIT_ASSERT_EQUAL( 2, m_path->getTestCount() );
|
|
CPPUNIT_ASSERT( m_suite == m_path->getTestAt(0) );
|
|
CPPUNIT_ASSERT( m_test1 == m_path->getTestAt(1) );
|
|
}
|
|
|
|
|
|
void
|
|
TestTest::testFindTestPathPointerFail()
|
|
{
|
|
MockTestCase test( "test" );
|
|
CPPUNIT_ASSERT( !m_suite->findTestPath( &test, *m_path ) );
|
|
CPPUNIT_ASSERT( !m_path->isValid() );
|
|
}
|
|
|
|
|
|
void
|
|
TestTest::testFindTestPathNameThis()
|
|
{
|
|
CPPUNIT_ASSERT( m_test1->findTestPath( "test1", *m_path ) );
|
|
CPPUNIT_ASSERT_EQUAL( 1, m_path->getTestCount() );
|
|
CPPUNIT_ASSERT( m_test1 == m_path->getChildTest() );
|
|
|
|
m_path->removeTests();
|
|
|
|
CPPUNIT_ASSERT( m_suite->findTestPath( "suite", *m_path ) );
|
|
CPPUNIT_ASSERT_EQUAL( 1, m_path->getTestCount() );
|
|
CPPUNIT_ASSERT( m_suite == m_path->getChildTest() );
|
|
}
|
|
|
|
|
|
void
|
|
TestTest::testFindTestPathName()
|
|
{
|
|
CPPUNIT_ASSERT( m_suite->findTestPath( "test2", *m_path ) );
|
|
CPPUNIT_ASSERT_EQUAL( 2, m_path->getTestCount() );
|
|
CPPUNIT_ASSERT( m_suite == m_path->getTestAt(0) );
|
|
CPPUNIT_ASSERT( m_test2 == m_path->getTestAt(1) );
|
|
}
|
|
|
|
|
|
void
|
|
TestTest::testFindTestPathNameFail()
|
|
{
|
|
CPPUNIT_ASSERT( !m_suite->findTestPath( "bad-test", *m_path ) );
|
|
CPPUNIT_ASSERT( !m_path->isValid() );
|
|
}
|
|
|
|
|
|
void
|
|
TestTest::testFindTest()
|
|
{
|
|
CPPUNIT_ASSERT( m_test1 == m_suite->findTest( "test1" ) );
|
|
}
|
|
|
|
|
|
void
|
|
TestTest::testFindTestThrow()
|
|
{
|
|
m_suite->findTest( "no-name" );
|
|
}
|
|
|
|
|
|
void
|
|
TestTest::testResolveTestPath()
|
|
{
|
|
CPPUNIT_NS::TestPath path1 = m_suite->resolveTestPath( "suite");
|
|
CPPUNIT_ASSERT_EQUAL( 1, path1.getTestCount() );
|
|
CPPUNIT_ASSERT( m_suite == path1.getTestAt(0) );
|
|
|
|
CPPUNIT_NS::TestPath path2 = m_suite->resolveTestPath( "suite/test2");
|
|
CPPUNIT_ASSERT_EQUAL( 2, path2.getTestCount() );
|
|
CPPUNIT_ASSERT( m_suite == path2.getTestAt(0) );
|
|
CPPUNIT_ASSERT( m_test2 == path2.getTestAt(1) );
|
|
}
|