ardupilot/tests/AP_gtest.h
Gustavo Jose de Sousa fe4aaaac95 tests: add macro for printing test parameter
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.
2016-05-16 19:08:35 -03:00

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(); \
}