|
Packit Service |
e31359 |
#ifndef ORTHODOXTEST_H
|
|
Packit Service |
e31359 |
#define ORTHODOXTEST_H
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
#include <cppunit/extensions/HelperMacros.h>
|
|
Packit Service |
e31359 |
#include "MockTestListener.h"
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class OrthodoxTest : public CPPUNIT_NS::TestFixture
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE( OrthodoxTest );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST( testValue );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST( testValueBadConstructor );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST( testValueBadInvert );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST( testValueBadEqual );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST( testValueBadNotEqual );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST( testValueBadCall );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST( testValueBadAssignment );
|
|
Packit Service |
e31359 |
CPPUNIT_TEST_SUITE_END();
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
OrthodoxTest();
|
|
Packit Service |
e31359 |
virtual ~OrthodoxTest();
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
virtual void setUp();
|
|
Packit Service |
e31359 |
virtual void tearDown();
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
void testValue();
|
|
Packit Service |
e31359 |
void testValueBadConstructor();
|
|
Packit Service |
e31359 |
void testValueBadInvert();
|
|
Packit Service |
e31359 |
void testValueBadEqual();
|
|
Packit Service |
e31359 |
void testValueBadNotEqual();
|
|
Packit Service |
e31359 |
void testValueBadCall();
|
|
Packit Service |
e31359 |
void testValueBadAssignment();
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
private:
|
|
Packit Service |
e31359 |
class Value
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
Value( int value =0 ) : m_value( value ) {}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
Value& operator= ( const Value& v )
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
m_value = v.m_value;
|
|
Packit Service |
e31359 |
return *this;
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
bool operator ==( const Value &other ) const
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
return m_value == other.m_value;
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
bool operator !=( const Value &other )
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
return !( *this == other );
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
Value operator !()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
return Value( -1 - m_value );
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
protected:
|
|
Packit Service |
e31359 |
int m_value;
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class ValueBadConstructor : public Value
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
ValueBadConstructor()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
static int serialNumber = 0;
|
|
Packit Service |
e31359 |
m_value = ++serialNumber;
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
ValueBadConstructor( int value ) : Value( value ) {}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
ValueBadConstructor operator !()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
return ValueBadConstructor( -1 - m_value );
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class ValueBadInvert : public Value
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
ValueBadInvert( int value =0 ) : Value( value ) {}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
ValueBadInvert operator !()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
return ValueBadInvert( 1 );
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class ValueBadEqual : public Value
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
ValueBadEqual( int value =0 ) : Value( value ) {}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
ValueBadEqual operator !()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
return ValueBadEqual( -1 - m_value );
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
bool operator ==( const ValueBadEqual &other ) const
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
return m_value != other.m_value;
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class ValueBadNotEqual : public Value
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
ValueBadNotEqual( int value =0 ) : Value( value ) {}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
ValueBadNotEqual operator !()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
return ValueBadNotEqual( -1 - m_value );
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
bool operator !=( const ValueBadNotEqual &other )
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
return m_value == other.m_value;
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class ValueBadCall : public Value
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
ValueBadCall( int value =0 ) : Value( value ) {}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
ValueBadCall( const ValueBadCall & ) : Value()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
static int serialNumber = 0;
|
|
Packit Service |
e31359 |
m_value = ++serialNumber;
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
ValueBadCall operator !()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
return ValueBadCall( -1 - m_value );
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
class ValueBadAssignment: public Value
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
public:
|
|
Packit Service |
e31359 |
ValueBadAssignment( int value =0 ) : Value( value ) {}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
ValueBadAssignment operator !()
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
return ValueBadAssignment( -1 - m_value );
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
ValueBadAssignment &operator =( const ValueBadAssignment & )
|
|
Packit Service |
e31359 |
{
|
|
Packit Service |
e31359 |
++m_value;
|
|
Packit Service |
e31359 |
return *this;
|
|
Packit Service |
e31359 |
}
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
OrthodoxTest( const OrthodoxTest © );
|
|
Packit Service |
e31359 |
void operator =( const OrthodoxTest © );
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
private:
|
|
Packit Service |
e31359 |
CPPUNIT_NS::TestResult *m_result;
|
|
Packit Service |
e31359 |
MockTestListener *m_testListener;
|
|
Packit Service |
e31359 |
};
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
#endif // ORTHODOXTEST_H
|