Belle II Software development
|
Some utilities to help with writing unit tests. More...
Classes | |
class | LogMessageTest |
Test fixture to be able to check the contents and types of emitted log messages in detail. More... | |
class | TempDirCreator |
changes working directory into a newly created directory, and removes it (and contents) on destruction. More... | |
class | TestWithGearbox |
This class provides a test fixture managing the opening and closing of the Gearbox with the default geometry file. More... | |
Functions | |
template<> | |
bool | allNear< Belle2::Helix > (const Belle2::Helix &expected, const Belle2::Helix &actual, double tolerance) |
Predicate checking that all five components of the Helix are close by a maximal error of absError. | |
bool | angleNear (double expected, double actual, double tolerance) |
Predicate checking that two angular values are close to each other modulus a 2 * PI difference. | |
bool | sameSign (double expected, double actual) |
Predicate checking that two values have the same sign. | |
bool | isPositive (double expected) |
Predicate checking that a value is bigger than zero. | |
bool | isNegative (double expected) |
Predicate checking that a value is smaller than zero. | |
template<class T > | |
bool | allNear (const T &expected, const T &actual, double tolerance) |
Templated version of predicate checking if two combound object containing some floating point are near each other by maximum deviation. | |
template<> | |
bool | allNear< ROOT::Math::XYZVector > (const ROOT::Math::XYZVector &expected, const ROOT::Math::XYZVector &actual, double tolerance) |
Predicate checking that all three components of XYZVector are close by a maximal error of tolerance. | |
void | PrintTo (const ROOT::Math::XYZVector &vector3, ::std::ostream &output) |
Print function for the google test framework to print a ROOT::Math::XYZVector to an output stream. | |
template<> | |
bool | allNear< TrackFindingCDC::Vector3D > (const TrackFindingCDC::Vector3D &expected, const TrackFindingCDC::Vector3D &actual, double tolerance) |
Predicate checking that all three components of Vector3D are close by a maximal error of tolerance. | |
Some utilities to help with writing unit tests.
It is possible to nest these macros with others to test two things, e.g.:
bool allNear | ( | const T & | expected, |
const T & | actual, | ||
double | tolerance | ||
) |
Templated version of predicate checking if two combound object containing some floating point are near each other by maximum deviation.
Concrete implementations can be given as simple overloads of the allNear function.
Definition at line 267 of file TestHelpers.h.
bool allNear< Belle2::Helix > | ( | const Belle2::Helix & | expected, |
const Belle2::Helix & | actual, | ||
double | tolerance | ||
) |
Predicate checking that all five components of the Helix are close by a maximal error of absError.
Extends the EXPECT_ALL_NEAR/ASSERT_ALL_NEAR macro in the framework testhelpers to work for the helix class
Definition at line 41 of file Helix.cc.
bool angleNear | ( | double | expected, |
double | actual, | ||
double | tolerance | ||
) |
Predicate checking that two angular values are close to each other modulus a 2 * PI difference.
Definition at line 71 of file TestHelpers.cc.
bool isNegative | ( | double | expected | ) |
Predicate checking that a value is smaller than zero.
Definition at line 90 of file TestHelpers.cc.
bool isPositive | ( | double | expected | ) |
Predicate checking that a value is bigger than zero.
Definition at line 85 of file TestHelpers.cc.
void PrintTo | ( | const ROOT::Math::XYZVector & | vector3, |
::std::ostream & | output | ||
) |
Print function for the google test framework to print a ROOT::Math::XYZVector to an output stream.
Definition at line 106 of file TestHelpers.cc.
bool sameSign | ( | double | expected, |
double | actual | ||
) |
Predicate checking that two values have the same sign.
Returns nan if any of the values is nan.
Definition at line 76 of file TestHelpers.cc.