CppUnit project page | FAQ | CppUnit home page |
Protects one or more test case run. More...
#include <Protector.h>
Public Member Functions | |
virtual | ~Protector () |
virtual bool | protect (const Functor &functor, const ProtectorContext &context)=0 |
Protected Member Functions | |
void | reportError (const ProtectorContext &context, const Exception &error) const |
void | reportError (const ProtectorContext &context, const Message &message, const SourceLine &sourceLine=SourceLine()) const |
void | reportFailure (const ProtectorContext &context, const Exception &failure) const |
Message | actualMessage (const Message &message, const ProtectorContext &context) const |
Protects one or more test case run.
Protector are used to globably 'decorate' a test case. The most common usage of Protector is to catch exception that do not subclass std::exception, such as MFC CException class or Rogue Wave RWXMsg class, and capture the message associated to the exception. In fact, CppUnit capture message from Exception and std::exception using a Protector.
Protector are chained. When you add a Protector using TestResult::pushProtector(), your protector is in fact passed as a Functor to the first protector of the chain.
TestCase protects call to setUp(), runTest() and tearDown() by calling TestResult::protect().
Because the protector chain is handled by TestResult, a protector can be active for a single test, or a complete test run.
Here are some possible usages:
Protector::~Protector | ( | ) | [virtual] |
Message Protector::actualMessage | ( | const Message & | message, |
const ProtectorContext & | context | ||
) | const [protected] |
virtual bool Protector::protect | ( | const Functor & | functor, |
const ProtectorContext & | context | ||
) | [pure virtual] |
Implemented in DefaultProtector, and ProtectorChain.
void Protector::reportError | ( | const ProtectorContext & | context, |
const Exception & | error | ||
) | const [protected] |
void Protector::reportError | ( | const ProtectorContext & | context, |
const Message & | message, | ||
const SourceLine & | sourceLine = SourceLine() |
||
) | const [protected] |
void Protector::reportFailure | ( | const ProtectorContext & | context, |
const Exception & | failure | ||
) | const [protected] |
|
hosts this site. |
Send comments to: CppUnit Developers |