128 lines
4.9 KiB
Diff
128 lines
4.9 KiB
Diff
From dc72f7c3b4da30461fe424b0f44d7f65c5acefec Mon Sep 17 00:00:00 2001
|
|
From: srz_zumix <zumix.cpp@gmail.com>
|
|
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
|
|
|