gtest-param-test.h (googletest-release-1.10.0) | : | gtest-param-test.h (googletest-release-1.11.0) | ||
---|---|---|---|---|
skipping to change at line 33 | skipping to change at line 33 | |||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | |||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | |||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||
// | // | |||
// Macros and functions for implementing parameterized tests | // Macros and functions for implementing parameterized tests | |||
// in Google C++ Testing and Mocking Framework (Google Test) | // in Google C++ Testing and Mocking Framework (Google Test) | |||
// | // | |||
// This file is generated by a SCRIPT. DO NOT EDIT BY HAND! | ||||
// | ||||
// GOOGLETEST_CM0001 DO NOT DELETE | // GOOGLETEST_CM0001 DO NOT DELETE | |||
#ifndef GTEST_INCLUDE_GTEST_GTEST_PARAM_TEST_H_ | #ifndef GOOGLETEST_INCLUDE_GTEST_GTEST_PARAM_TEST_H_ | |||
#define GTEST_INCLUDE_GTEST_GTEST_PARAM_TEST_H_ | #define GOOGLETEST_INCLUDE_GTEST_GTEST_PARAM_TEST_H_ | |||
// Value-parameterized tests allow you to test your code with different | // Value-parameterized tests allow you to test your code with different | |||
// parameters without writing multiple copies of the same test. | // parameters without writing multiple copies of the same test. | |||
// | // | |||
// Here is how you use value-parameterized tests: | // Here is how you use value-parameterized tests: | |||
#if 0 | #if 0 | |||
// To write value-parameterized tests, first you should define a fixture | // To write value-parameterized tests, first you should define a fixture | |||
// class. It is usually derived from testing::TestWithParam<T> (see below for | // class. It is usually derived from testing::TestWithParam<T> (see below for | |||
skipping to change at line 373 | skipping to change at line 371 | |||
// values of a Cartesian product of those sequences' elements. | // values of a Cartesian product of those sequences' elements. | |||
// | // | |||
// Synopsis: | // Synopsis: | |||
// Combine(gen1, gen2, ..., genN) | // Combine(gen1, gen2, ..., genN) | |||
// - returns a generator producing sequences with elements coming from | // - returns a generator producing sequences with elements coming from | |||
// the Cartesian product of elements from the sequences generated by | // the Cartesian product of elements from the sequences generated by | |||
// gen1, gen2, ..., genN. The sequence elements will have a type of | // gen1, gen2, ..., genN. The sequence elements will have a type of | |||
// std::tuple<T1, T2, ..., TN> where T1, T2, ..., TN are the types | // std::tuple<T1, T2, ..., TN> where T1, T2, ..., TN are the types | |||
// of elements from sequences produces by gen1, gen2, ..., genN. | // of elements from sequences produces by gen1, gen2, ..., genN. | |||
// | // | |||
// Combine can have up to 10 arguments. | ||||
// | ||||
// Example: | // Example: | |||
// | // | |||
// This will instantiate tests in test suite AnimalTest each one with | // This will instantiate tests in test suite AnimalTest each one with | |||
// the parameter values tuple("cat", BLACK), tuple("cat", WHITE), | // the parameter values tuple("cat", BLACK), tuple("cat", WHITE), | |||
// tuple("dog", BLACK), and tuple("dog", WHITE): | // tuple("dog", BLACK), and tuple("dog", WHITE): | |||
// | // | |||
// enum Color { BLACK, GRAY, WHITE }; | // enum Color { BLACK, GRAY, WHITE }; | |||
// class AnimalTest | // class AnimalTest | |||
// : public testing::TestWithParam<std::tuple<const char*, Color> > {...}; | // : public testing::TestWithParam<std::tuple<const char*, Color> > {...}; | |||
// | // | |||
skipping to change at line 418 | skipping to change at line 414 | |||
template <typename... Generator> | template <typename... Generator> | |||
internal::CartesianProductHolder<Generator...> Combine(const Generator&... g) { | internal::CartesianProductHolder<Generator...> Combine(const Generator&... g) { | |||
return internal::CartesianProductHolder<Generator...>(g...); | return internal::CartesianProductHolder<Generator...>(g...); | |||
} | } | |||
#define TEST_P(test_suite_name, test_name) \ | #define TEST_P(test_suite_name, test_name) \ | |||
class GTEST_TEST_CLASS_NAME_(test_suite_name, test_name) \ | class GTEST_TEST_CLASS_NAME_(test_suite_name, test_name) \ | |||
: public test_suite_name { \ | : public test_suite_name { \ | |||
public: \ | public: \ | |||
GTEST_TEST_CLASS_NAME_(test_suite_name, test_name)() {} \ | GTEST_TEST_CLASS_NAME_(test_suite_name, test_name)() {} \ | |||
virtual void TestBody(); \ | void TestBody() override; \ | |||
\ | \ | |||
private: \ | private: \ | |||
static int AddToRegistry() { \ | static int AddToRegistry() { \ | |||
::testing::UnitTest::GetInstance() \ | ::testing::UnitTest::GetInstance() \ | |||
->parameterized_test_registry() \ | ->parameterized_test_registry() \ | |||
.GetTestSuitePatternHolder<test_suite_name>( \ | .GetTestSuitePatternHolder<test_suite_name>( \ | |||
#test_suite_name, \ | GTEST_STRINGIFY_(test_suite_name), \ | |||
::testing::internal::CodeLocation(__FILE__, __LINE__)) \ | ::testing::internal::CodeLocation(__FILE__, __LINE__)) \ | |||
->AddTestPattern( \ | ->AddTestPattern( \ | |||
GTEST_STRINGIFY_(test_suite_name), GTEST_STRINGIFY_(test_name), \ | GTEST_STRINGIFY_(test_suite_name), GTEST_STRINGIFY_(test_name), \ | |||
new ::testing::internal::TestMetaFactory<GTEST_TEST_CLASS_NAME_( \ | new ::testing::internal::TestMetaFactory<GTEST_TEST_CLASS_NAME_( \ | |||
test_suite_name, test_name)>()); \ | test_suite_name, test_name)>(), \ | |||
::testing::internal::CodeLocation(__FILE__, __LINE__)); \ | ||||
return 0; \ | return 0; \ | |||
} \ | } \ | |||
static int gtest_registering_dummy_ GTEST_ATTRIBUTE_UNUSED_; \ | static int gtest_registering_dummy_ GTEST_ATTRIBUTE_UNUSED_; \ | |||
GTEST_DISALLOW_COPY_AND_ASSIGN_(GTEST_TEST_CLASS_NAME_(test_suite_name, \ | GTEST_DISALLOW_COPY_AND_ASSIGN_(GTEST_TEST_CLASS_NAME_(test_suite_name, \ | |||
test_name)); \ | test_name)); \ | |||
}; \ | }; \ | |||
int GTEST_TEST_CLASS_NAME_(test_suite_name, \ | int GTEST_TEST_CLASS_NAME_(test_suite_name, \ | |||
test_name)::gtest_registering_dummy_ = \ | test_name)::gtest_registering_dummy_ = \ | |||
GTEST_TEST_CLASS_NAME_(test_suite_name, test_name)::AddToRegistry(); \ | GTEST_TEST_CLASS_NAME_(test_suite_name, test_name)::AddToRegistry(); \ | |||
void GTEST_TEST_CLASS_NAME_(test_suite_name, test_name)::TestBody() | void GTEST_TEST_CLASS_NAME_(test_suite_name, test_name)::TestBody() | |||
skipping to change at line 485 | skipping to change at line 482 | |||
return ((GTEST_EXPAND_(GTEST_GET_SECOND_( \ | return ((GTEST_EXPAND_(GTEST_GET_SECOND_( \ | |||
__VA_ARGS__, \ | __VA_ARGS__, \ | |||
::testing::internal::DefaultParamName<test_suite_name::ParamType>, \ | ::testing::internal::DefaultParamName<test_suite_name::ParamType>, \ | |||
DUMMY_PARAM_))))(info); \ | DUMMY_PARAM_))))(info); \ | |||
} \ | } \ | |||
static int gtest_##prefix##test_suite_name##_dummy_ \ | static int gtest_##prefix##test_suite_name##_dummy_ \ | |||
GTEST_ATTRIBUTE_UNUSED_ = \ | GTEST_ATTRIBUTE_UNUSED_ = \ | |||
::testing::UnitTest::GetInstance() \ | ::testing::UnitTest::GetInstance() \ | |||
->parameterized_test_registry() \ | ->parameterized_test_registry() \ | |||
.GetTestSuitePatternHolder<test_suite_name>( \ | .GetTestSuitePatternHolder<test_suite_name>( \ | |||
#test_suite_name, \ | GTEST_STRINGIFY_(test_suite_name), \ | |||
::testing::internal::CodeLocation(__FILE__, __LINE__)) \ | ::testing::internal::CodeLocation(__FILE__, __LINE__)) \ | |||
->AddTestSuiteInstantiation( \ | ->AddTestSuiteInstantiation( \ | |||
#prefix, >est_##prefix##test_suite_name##_EvalGenerator_, \ | GTEST_STRINGIFY_(prefix), \ | |||
>est_##prefix##test_suite_name##_EvalGenerator_, \ | ||||
>est_##prefix##test_suite_name##_EvalGenerateName_, \ | >est_##prefix##test_suite_name##_EvalGenerateName_, \ | |||
__FILE__, __LINE__) | __FILE__, __LINE__) | |||
// Allow Marking a Parameterized test class as not needing to be instantiated. | ||||
#define GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(T) \ | ||||
namespace gtest_do_not_use_outside_namespace_scope {} \ | ||||
static const ::testing::internal::MarkAsIgnored gtest_allow_ignore_##T( \ | ||||
GTEST_STRINGIFY_(T)) | ||||
// Legacy API is deprecated but still available | // Legacy API is deprecated but still available | |||
#ifndef GTEST_REMOVE_LEGACY_TEST_CASEAPI_ | #ifndef GTEST_REMOVE_LEGACY_TEST_CASEAPI_ | |||
#define INSTANTIATE_TEST_CASE_P \ | #define INSTANTIATE_TEST_CASE_P \ | |||
static_assert(::testing::internal::InstantiateTestCase_P_IsDeprecated(), \ | static_assert(::testing::internal::InstantiateTestCase_P_IsDeprecated(), \ | |||
""); \ | ""); \ | |||
INSTANTIATE_TEST_SUITE_P | INSTANTIATE_TEST_SUITE_P | |||
#endif // GTEST_REMOVE_LEGACY_TEST_CASEAPI_ | #endif // GTEST_REMOVE_LEGACY_TEST_CASEAPI_ | |||
} // namespace testing | } // namespace testing | |||
#endif // GTEST_INCLUDE_GTEST_GTEST_PARAM_TEST_H_ | #endif // GOOGLETEST_INCLUDE_GTEST_GTEST_PARAM_TEST_H_ | |||
End of changes. 10 change blocks. | ||||
11 lines changed or deleted | 15 lines changed or added |