From 386c7665f5cf1f772f5877cdb32070d8052041a9 Mon Sep 17 00:00:00 2001 From: Abseil Team Date: Mon, 7 Nov 2022 09:36:17 -0800 Subject: RecordProperty serializes ints and 64-bit ints, including size_ts PiperOrigin-RevId: 486685761 Change-Id: I164d2646e65670d341dbf437ee571953c456677a --- googletest/include/gtest/gtest.h | 3 ++- googletest/src/gtest.cc | 10 ++++------ googletest/test/gtest_xml_outfile2_test_.cc | 4 +++- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/googletest/include/gtest/gtest.h b/googletest/include/gtest/gtest.h index 7963e8c7..55fdc601 100644 --- a/googletest/include/gtest/gtest.h +++ b/googletest/include/gtest/gtest.h @@ -50,6 +50,7 @@ #define GOOGLETEST_INCLUDE_GTEST_GTEST_H_ #include +#include #include #include #include @@ -296,7 +297,7 @@ class GTEST_API_ Test { // SetUp/TearDown method of Environment objects registered with Google // Test) will be output as attributes of the element. static void RecordProperty(const std::string& key, const std::string& value); - static void RecordProperty(const std::string& key, int value); + static void RecordProperty(const std::string& key, int64_t value); protected: // Creates a Test object. diff --git a/googletest/src/gtest.cc b/googletest/src/gtest.cc index 38594528..2276d077 100644 --- a/googletest/src/gtest.cc +++ b/googletest/src/gtest.cc @@ -2444,12 +2444,10 @@ void Test::TearDown() {} void Test::RecordProperty(const std::string& key, const std::string& value) { UnitTest::GetInstance()->RecordProperty(key, value); } - -// Allows user supplied key value pairs to be recorded for later output. -void Test::RecordProperty(const std::string& key, int value) { - Message value_message; - value_message << value; - RecordProperty(key, value_message.GetString().c_str()); +// We do not define a customary serialization except for integers, +// but other values could be logged in this way. +void Test::RecordProperty(const std::string& key, int64_t value) { + RecordProperty(key, (Message() << value).GetString()); } namespace internal { diff --git a/googletest/test/gtest_xml_outfile2_test_.cc b/googletest/test/gtest_xml_outfile2_test_.cc index f9a2a6e9..f743b31b 100644 --- a/googletest/test/gtest_xml_outfile2_test_.cc +++ b/googletest/test/gtest_xml_outfile2_test_.cc @@ -39,5 +39,7 @@ class PropertyTwo : public testing::Test { }; TEST_F(PropertyTwo, TestSomeProperties) { - RecordProperty("TestSomeProperty", 2); + // Validate we can write an unsigned size_t as a property + size_t prop_two = 2; + RecordProperty("TestSomeProperty", prop_two); } -- cgit v1.2.3