Base class for tests. More...

#include <testcase.hh>

Inheritance diagram for test::TestCase:
test::ArPackppTest test::ArPackTest test::BEMSpaceTest test::BesselTest test::BiCgStabTest test::BilinearFormTest test::BoundariesTest test::CellConditionTest test::CgTest test::Cloneing test::CompositionTestBase test::ConstrainedEVP test::ConvertMeshQuads test::DeadLock1 test::DeadLock2 test::DeadLock3 test::DGEdgeInfoTest test::DGElementPair2dTest test::DGSpace2dP1Test test::DGTriangleP1Test test::DirichletTest test::DirPowItTest test::DomainDecomp test::DomainDecompTest test::DriverTest test::Eddy2DRingTest test::EdgeMeshTest test::EdgeTest test::ElementFormulaTest test::ElementFunctionTest test::ExceptionTest test::ExtremaTest test::Formula2DTest test::FormulaTest test::FrmfElmFrmTest test::FunctionEvaluation test::FunctionEvaluation3d test::GridInfoTest test::H1extensionTest test::hp2DedgeAdvectionTest test::hpAdaptiveSpaceDGTest test::hpFullTest2D test::IndexRangeTest test::InfiniteMesh2dTest test::IntegralTest test::KarniadakisTest test::LaguerreTest test::LapackTest test::LegendreTest test::LevelRieszTest test::LinearFormTest test::MappingTest test::MatfileIOTest test::MeshImp2DTest test::MixedNonContTest test::MumpsTest test::mumpsTestFail test::NeumannTraceTest test::PardisoTest test::PointTest test::ProjectionTest test::Quad2dTest test::QuadratureTest test::RCPTest test::RestrictionSpaceTest test::SmallESTest test::SpaceH1onInfMeshTest test::SpaceH1Test test::SpaceL2Test test::SpaceTest2D test::SpaceTest3D test::SparseMatrixTest test::StackTest test::SuperLUTest test::TestBlending test::TestDiameter test::TestDualSpace1D test::TestEdgeMaps2D test::TestIntegrals1D test::TestJacobian2D test::TestLegendre1D test::TestLinearForm1D test::TestMatrices1D test::TestMatrices2D test::TestMatrices3D test::ToTest test::TraceSpaceTest3D test::TraceTest test::UmfpackTest test::VectorTest

Public Member Functions

void _succeed ()
 Explicitly succeds a test. More...
 
long getNumFailed () const
 Returns number of failed tests. More...
 
long getNumPassed () const
 Returns number of passed tests. More...
 
const ostream * getStream () const
 Returns output stream. More...
 
long report () const
 Prints a report on the number of passed and failed tests to the output stream. More...
 
virtual void reset ()
 Resets the counters for the failed and passed tests. More...
 
virtual void run ()=0
 Runs the tests. Must be overwritten by the specialization. More...
 
void setStream (ostream *osptr)
 Sets the output stream. More...
 
 TestCase (ostream *osptr=0)
 Constructor. More...
 
virtual ~TestCase ()
 

Protected Member Functions

void do_fail (const string &lbl, const char *fname, long lineno)
 Internal function to report a failed test (besides increasing the failed counter) More...
 
bool do_numtest (double num, double orig, const string &lbl, const string &lbl2, const char *fname, long lineno, const double tol=1e-10)
 Internal function to do a numerical test. More...
 
bool do_numtest (std::complex< double > num, std::complex< double > orig, const string &lbl, const string &lbl2, const char *fname, long lineno, const double tol=1e-10)
 
bool do_test (bool cond, const string &lbl, const char *fname, long lineno)
 Internal function to do a test. More...
 

Private Member Functions

TestCaseoperator= (const TestCase &)
 Disallowed. More...
 
 TestCase (const TestCase &)
 Disallowed. More...
 

Private Attributes

long m_nFail
 
long m_nPass
 
ostream * m_osptr
 

Detailed Description

Base class for tests.

Writing a test case is done by deriving from this class.

Author
Chuck Allison, 2000. Doxygen comments by Philipp Frauenfelder, 2003.
See also
Chuck Allison, The Simplest Automated Unit Test Framework That Could Possibly Work, C/C++ Users Journal, September 2000.
Test:
test::ToTest

Definition at line 92 of file testcase.hh.

Constructor & Destructor Documentation

◆ TestCase() [1/2]

test::TestCase::TestCase ( ostream *  osptr = 0)
inline

Constructor.

Parameters
osptrPointer to the output stream. Defaults to stdout.

Definition at line 147 of file testcase.hh.

◆ ~TestCase()

virtual test::TestCase::~TestCase ( )
inlinevirtual

Definition at line 98 of file testcase.hh.

◆ TestCase() [2/2]

test::TestCase::TestCase ( const TestCase )
private

Disallowed.

Member Function Documentation

◆ _succeed()

void test::TestCase::_succeed ( )
inline

Explicitly succeds a test.

Definition at line 112 of file testcase.hh.

◆ do_fail()

void test::TestCase::do_fail ( const string &  lbl,
const char *  fname,
long  lineno 
)
protected

Internal function to report a failed test (besides increasing the failed counter)

◆ do_numtest() [1/2]

bool test::TestCase::do_numtest ( double  num,
double  orig,
const string &  lbl,
const string &  lbl2,
const char *  fname,
long  lineno,
const double  tol = 1e-10 
)
protected

Internal function to do a numerical test.

◆ do_numtest() [2/2]

bool test::TestCase::do_numtest ( std::complex< double >  num,
std::complex< double >  orig,
const string &  lbl,
const string &  lbl2,
const char *  fname,
long  lineno,
const double  tol = 1e-10 
)
protected

◆ do_test()

bool test::TestCase::do_test ( bool  cond,
const string &  lbl,
const char *  fname,
long  lineno 
)
protected

Internal function to do a test.

◆ getNumFailed()

long test::TestCase::getNumFailed ( ) const
inline

Returns number of failed tests.

Definition at line 105 of file testcase.hh.

◆ getNumPassed()

long test::TestCase::getNumPassed ( ) const
inline

Returns number of passed tests.

Definition at line 103 of file testcase.hh.

◆ getStream()

const ostream* test::TestCase::getStream ( ) const
inline

Returns output stream.

Definition at line 107 of file testcase.hh.

◆ operator=()

TestCase& test::TestCase::operator= ( const TestCase )
private

Disallowed.

◆ report()

long test::TestCase::report ( ) const

Prints a report on the number of passed and failed tests to the output stream.

Returns
Number of failed tests.

◆ reset()

virtual void test::TestCase::reset ( )
inlinevirtual

Resets the counters for the failed and passed tests.

Definition at line 119 of file testcase.hh.

◆ run()

virtual void test::TestCase::run ( )
pure virtual

Runs the tests. Must be overwritten by the specialization.

Implemented in test::RCPTest, test::DriverTest, test::RestrictionSpaceTest, test::IndexRangeTest, test::ElementFunctionTest, test::ElementFormulaTest, test::DomainDecompTest, test::UmfpackTest, test::SuperLUTest, test::SparseMatrixTest, test::PardisoTest, test::mumpsTestFail, test::MumpsTest, test::LapackTest, test::DomainDecomp, test::DeepCompositionsTest, test::MoreCompositionsTest, test::CompositionsTest, test::CgTest, test::BiCgStabTest, test::Eddy2DRingTest, test::MatfileIOTest, test::DGSpace2dP1Test, test::DGTriangleP1Test, test::DGElementPair2dTest, test::DGEdgeInfoTest, test::LevelRieszTest, test::LegendreTest, test::LaguerreTest, test::KarniadakisTest, test::QuadratureTest, test::TraceSpaceTest3D, test::SpaceTest3D, test::TestMatrices3D, test::FunctionEvaluation3d, test::DeadLock3, test::DeadLock2, test::LinearFormTest, test::BoundariesTest, test::BilinearFormTest, test::hp2DedgeAdvectionTest, test::TraceTest, test::NeumannTraceTest, test::MixedNonContTest, test::SpaceH1onInfMeshTest, test::GridInfoTest, test::SpaceTest2D, test::SpaceL2Test, test::SpaceH1Test, test::ProjectionTest, test::TestMatrices2D, test::LinearFormTest, test::IntegralTest, test::hpFullTest2D, test::hpAdaptiveSpaceDGTest, test::H1extensionTest, test::FunctionEvaluation, test::Formula2DTest, test::ExtremaTest, test::EdgeTest, test::DirichletTest, test::Cloneing, test::CellConditionTest, test::TestLinearForm1D, test::TestLegendre1D, test::TestIntegrals1D, test::TestDualSpace1D, test::TestMatrices1D, test::Quad2dTest, test::TestJacobian2D, test::InfiniteMesh2dTest, test::FrmfElmFrmTest, test::EdgeMeshTest, test::TestDiameter, test::TestEdgeMaps2D, test::TestBlending, test::MeshImp2DTest, test::ConvertMeshQuads, test::DeadLock1, test::VectorTest, test::FormulaTest, test::ElementFormulaTest, test::BesselTest, test::SmallESTest, test::DirPowItTest, test::ConstrainedEVP, test::ArPackTest, test::ArPackppTest, test::BEMSpaceTest, test::ToTest, test::StackTest, test::MappingTest, test::PointTest, and test::ExceptionTest.

◆ setStream()

void test::TestCase::setStream ( ostream *  osptr)
inline

Sets the output stream.

Definition at line 109 of file testcase.hh.

Member Data Documentation

◆ m_nFail

long test::TestCase::m_nFail
private

Definition at line 139 of file testcase.hh.

◆ m_nPass

long test::TestCase::m_nPass
private

Definition at line 138 of file testcase.hh.

◆ m_osptr

ostream* test::TestCase::m_osptr
private

Definition at line 137 of file testcase.hh.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich