diff --git a/0001-Googletest-export.patch b/0001-Googletest-export.patch new file mode 100644 index 0000000..adfa615 --- /dev/null +++ b/0001-Googletest-export.patch @@ -0,0 +1,127 @@ +From dc72f7c3b4da30461fe424b0f44d7f65c5acefec Mon Sep 17 00:00:00 2001 +From: srz_zumix +Date: Mon, 20 Aug 2018 16:18:41 -0400 +Subject: [PATCH] Googletest export + +Internal Change + +PiperOrigin-RevId: 209471987 +--- + googletest/include/gtest/gtest.h | 4 +- + .../test/gtest_setuptestcase_failure_test.cc | 58 +++++++++++++++++++ + googletest/test/gtest_unittest.cc | 22 ------- + 3 files changed, 61 insertions(+), 23 deletions(-) + create mode 100644 googletest/test/gtest_setuptestcase_failure_test.cc + +diff --git a/googletest/include/gtest/gtest.h b/googletest/include/gtest/gtest.h +index 2be8b112..78cfc329 100644 +--- a/googletest/include/gtest/gtest.h ++++ b/googletest/include/gtest/gtest.h +@@ -868,7 +868,9 @@ class GTEST_API_ TestCase { + bool Passed() const { return !Failed(); } + + // Returns true iff the test case failed. +- bool Failed() const { return failed_test_count() > 0; } ++ bool Failed() const { ++ return failed_test_count() > 0 || ad_hoc_test_result().Failed(); ++ } + + // Returns the elapsed time, in milliseconds. + TimeInMillis elapsed_time() const { return elapsed_time_; } +diff --git a/googletest/test/gtest_setuptestcase_failure_test.cc b/googletest/test/gtest_setuptestcase_failure_test.cc +new file mode 100644 +index 00000000..b20d9a4e +--- /dev/null ++++ b/googletest/test/gtest_setuptestcase_failure_test.cc +@@ -0,0 +1,58 @@ ++// Copyright 2009 Google Inc. All rights reserved. ++// ++// Redistribution and use in source and binary forms, with or without ++// modification, are permitted provided that the following conditions are ++// met: ++// ++// * Redistributions of source code must retain the above copyright ++// notice, this list of conditions and the following disclaimer. ++// * Redistributions in binary form must reproduce the above ++// copyright notice, this list of conditions and the following disclaimer ++// in the documentation and/or other materials provided with the ++// distribution. ++// * Neither the name of Google Inc. nor the names of its ++// contributors may be used to endorse or promote products derived from ++// this software without specific prior written permission. ++// ++// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ++// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ++// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ++// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ++// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ++// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ++// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ++// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ++// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ++// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++ ++#include "gtest/gtest.h" ++ ++using ::testing::InitGoogleTest; ++ ++// Tests ad_hoc_test_result(). ++ ++class AdHocTestResultTest : public testing::Test { ++ protected: ++ static void SetUpTestCase() { ++ FAIL() << "A failure happened inside SetUpTestCase()."; ++ } ++}; ++ ++TEST_F(AdHocTestResultTest, AdHocTestResultForTestCaseShowsFailure) { ++ const testing::TestResult& test_result = testing::UnitTest::GetInstance() ++ ->current_test_case() ++ ->ad_hoc_test_result(); ++ EXPECT_TRUE(test_result.Failed()); ++} ++ ++TEST_F(AdHocTestResultTest, AdHocTestResultTestForUnitTestDoesNotShowFailure) { ++ const testing::TestResult& test_result = ++ testing::UnitTest::GetInstance()->ad_hoc_test_result(); ++ EXPECT_FALSE(test_result.Failed()); ++} ++ ++int main(int argc, char **argv) { ++ InitGoogleTest(&argc, argv); ++ return RUN_ALL_TESTS() ? 0 : 1; ++} +diff --git a/googletest/test/gtest_unittest.cc b/googletest/test/gtest_unittest.cc +index e1c30f39..98755540 100644 +--- a/googletest/test/gtest_unittest.cc ++++ b/googletest/test/gtest_unittest.cc +@@ -7771,25 +7771,3 @@ TEST(SkipPrefixTest, DoesNotSkipWhenPrefixDoesNotMatch) { + EXPECT_FALSE(SkipPrefix("world!", &p)); + EXPECT_EQ(str, p); + } +- +-// Tests ad_hoc_test_result(). +- +-class AdHocTestResultTest : public testing::Test { +- protected: +- static void SetUpTestCase() { +- FAIL() << "A failure happened inside SetUpTestCase()."; +- } +-}; +- +-TEST_F(AdHocTestResultTest, AdHocTestResultForTestCaseShowsFailure) { +- const testing::TestResult& test_result = testing::UnitTest::GetInstance() +- ->current_test_case() +- ->ad_hoc_test_result(); +- EXPECT_TRUE(test_result.Failed()); +-} +- +-TEST_F(AdHocTestResultTest, AdHocTestResultTestForUnitTestDoesNotShowFailure) { +- const testing::TestResult& test_result = +- testing::UnitTest::GetInstance()->ad_hoc_test_result(); +- EXPECT_FALSE(test_result.Failed()); +-} +-- +2.39.0.windows.2 + diff --git a/gtest.spec b/gtest.spec index 7c575cc..f22bb36 100644 --- a/gtest.spec +++ b/gtest.spec @@ -1,6 +1,6 @@ Name: gtest Version: 1.8.1 -Release: 3 +Release: 4 Summary: Google C++ testing framework License: BSD and ASL 2.0 URL: https://github.com/google/googletest @@ -9,6 +9,7 @@ Patch0000: gtest-1.8.1-null-pointer.patch Patch0001: gtest-PR1839-Fix-Python3-support.patch Patch0002: gtest-1.8.1-libversion.patch Patch0003: gtest-1.8.1-add-missing-pkgconfig-requires.patch +Patch0004: 0001-Googletest-export.patch BuildRequires: gcc-c++ cmake python3-devel %description This package is Google C++ testing framework,It can be compiled for @@ -77,5 +78,8 @@ make test %{_libdir}/pkgconfig/gmock* %changelog +* Tue Jan 18 2023 xingxing - 1.8.1-4 +- Internal Change + * Wed Nov 27 2019 zhujunhao - 1.8.1-3 - Package init