mirror of
https://github.com/ArduPilot/ardupilot
synced 2025-01-03 14:38:30 -04:00
fe4aaaac95
Google Test allows to instantiate tests for a list of different values, which are called parameters. A common use of that feature in Ardupilot will be that a parameter will be represented by an object that will have the value to be tested and information about that value. That information will basically map the expected behavior of tests on the value stored by the parameter. The macro added in this patch allows to easily print the value of a failed test's parameter.
19 lines
423 B
C++
19 lines
423 B
C++
/*
|
|
* Utility header for unit tests with gtest.
|
|
*/
|
|
#include <gtest/gtest.h>
|
|
|
|
|
|
#define AP_GTEST_PRINTATBLE_PARAM_MEMBER(class_name_, printable_member_) \
|
|
::std::ostream& operator<<(::std::ostream& os, const class_name_& param) \
|
|
{ \
|
|
return os << param.printable_member_; \
|
|
}
|
|
|
|
#define AP_GTEST_MAIN() \
|
|
int main(int argc, char *argv[]) \
|
|
{ \
|
|
::testing::InitGoogleTest(&argc, argv); \
|
|
return RUN_ALL_TESTS(); \
|
|
}
|