QuickCheck++  0.0.3
Automated testing library
Public Member Functions | Private Member Functions | List of all members
quickcheck::Property< A, B, C > Class Template Reference

3-argument property. More...

#include <Property.hh>

Inheritance diagram for quickcheck::Property< A, B, C >:
quickcheck::PropertyBase< A, B, C, Unit, Unit >

Public Member Functions

virtual void addFixed (const A &a, const B &b, const C &c)
 Adds a fixed test case for with the given arguments.
- Public Member Functions inherited from quickcheck::PropertyBase< A, B, C, Unit, Unit >
 PropertyBase ()
 Constructor.
virtual ~PropertyBase ()
 Destructor.
bool check (size_t n=100, size_t max=0, bool isVerbose=false, std::ostream &out=std::cout)
 Checks this property.

Private Member Functions

virtual bool accepts (const A &a, const B &b, const C &c)
 Tells whether or not this property should accept given arguments.
virtual const std::string classify (const A &a, const B &b, const C &c)
 Classifies input to allow observation of input distribution.
virtual void generateInput (size_t n, A &a, B &b, C &c)
 Generates input randomly.
virtual bool holdsFor (const A &a, const B &b, const C &c)=0
 Tells whether or not this property holds for the given input.
virtual bool isTrivialFor (const A &a, const B &b, const C &c)
 Tells whether or not the property is trivially true for the given input.
bool _accepts (const A &a, const B &b, const C &c, const Unit &d, const Unit &e)
const std::string _classify (const A &a, const B &b, const C &c, const Unit &d, const Unit &e)
void _generateInput (size_t n, A &a, B &b, C &c, Unit &d, Unit &e)
bool _holdsFor (const A &a, const B &b, const C &c, const Unit &d, const Unit &e)
bool _isTrivialFor (const A &a, const B &b, const C &c, const Unit &d, const Unit &e)

Additional Inherited Members

- Protected Member Functions inherited from quickcheck::PropertyBase< A, B, C, Unit, Unit >
void _addFixed (const A &a, const B &b, const C &c, const Unit &d, const Unit &e)
 Adds a fixed test case for with the given arguments.

Detailed Description

template<class A, class B, class C>
class quickcheck::Property< A, B, C >

3-argument property.

This class models a property (see PropertyBase) with 3-argument input.

Template Parameters
Athe type of the first argument
Bthe type of the second argument
Cthe type of the third argument

Member Function Documentation

template<class A , class B , class C >
bool quickcheck::Property< A, B, C >::_accepts ( const A &  a,
const B &  b,
const C &  c,
const Unit d,
const Unit e 
)
private
template<class A , class B , class C >
const std::string quickcheck::Property< A, B, C >::_classify ( const A &  a,
const B &  b,
const C &  c,
const Unit d,
const Unit e 
)
private
template<class A , class B , class C >
void quickcheck::Property< A, B, C >::_generateInput ( size_t  n,
A &  a,
B &  b,
C &  c,
Unit d,
Unit e 
)
private
template<class A , class B , class C >
bool quickcheck::Property< A, B, C >::_holdsFor ( const A &  a,
const B &  b,
const C &  c,
const Unit d,
const Unit e 
)
private
template<class A , class B , class C >
bool quickcheck::Property< A, B, C >::_isTrivialFor ( const A &  a,
const B &  b,
const C &  c,
const Unit d,
const Unit e 
)
private
template<class A , class B , class C >
bool quickcheck::Property< A, B, C >::accepts ( const A &  a,
const B &  b,
const C &  c 
)
privatevirtual

Tells whether or not this property should accept given arguments.

3-argument counterpart of Property::accepts.

Parameters
athe first argument
bthe second argument
cthe third argument
template<class A , class B , class C >
void quickcheck::Property< A, B, C >::addFixed ( const A &  a,
const B &  b,
const C &  c 
)
virtual

Adds a fixed test case for with the given arguments.

3-argument counterpart of Property::addFixed.

Parameters
athe first argument of the test case
bthe second argument of the test case
cthe third argument of the test case
template<class A , class B , class C >
const std::string quickcheck::Property< A, B, C >::classify ( const A &  a,
const B &  b,
const C &  c 
)
privatevirtual

Classifies input to allow observation of input distribution.

3-argument counterpart of Property::classify.

Parameters
athe first argument
bthe second argument
cthe third argument
template<class A , class B , class C >
void quickcheck::Property< A, B, C >::generateInput ( size_t  n,
A &  a,
B &  b,
C &  c 
)
privatevirtual

Generates input randomly.

3-argument counterpart of Property::generateInput.

Parameters
nthe size hint
athe first argument
bthe second argument
cthe third argument
template<class A , class B , class C >
virtual bool quickcheck::Property< A, B, C >::holdsFor ( const A &  a,
const B &  b,
const C &  c 
)
privatepure virtual

Tells whether or not this property holds for the given input.

3-argument counterpart of Property::holdsFor.

Parameters
athe first argument
bthe second argument
cthe third argument
template<class A , class B , class C >
bool quickcheck::Property< A, B, C >::isTrivialFor ( const A &  a,
const B &  b,
const C &  c 
)
privatevirtual

Tells whether or not the property is trivially true for the given input.

3-argument counterpart of Property::isTrivialFor.

Parameters
athe first argument
bthe second argument
cthe third argument

The documentation for this class was generated from the following file: