#ifndef CPPUNIT_PROTECTORCONTEXT_H
#define CPPUNIT_PROTECTORCONTEXT_H
#include <cppunit/Portability.h>
#include <string>
CPPUNIT_NS_BEGIN
class Test;
class TestResult;
/*! \brief Protector context (Implementation).
* Implementation detail.
* \internal Context use to report failure in Protector.
*/
class CPPUNIT_API ProtectorContext
{
public:
ProtectorContext( Test *test,
TestResult *result,
const std::string &shortDescription )
: m_test( test )
, m_result( result )
, m_shortDescription( shortDescription )
{
}
private:
/// disable copy construction
ProtectorContext( const ProtectorContext& );
/// disable assignment
ProtectorContext& operator=(const ProtectorContext&);
public:
Test *m_test;
TestResult *m_result;
std::string m_shortDescription;
};
CPPUNIT_NS_END
#endif // CPPUNIT_PROTECTORCONTEXT_H