Skip to content

Commit

Permalink
Googletest - rebase to 1.13 (#625) (#731)
Browse files Browse the repository at this point in the history
* Googletest rebase.

Step 1 - delete old gmock and gtest from testing/

b/280671902

* Googletest - Copying in unmodified headers and BUILD.gn from Chrome branch-heads/5735

b/280671902

* Googletest rebase - Applying Starboard changes and related changes to compile.

b/280671902

(cherry picked from commit c6662a4)

Co-authored-by: thorsten sideb0ard <[email protected]>
  • Loading branch information
cobalt-github-releaser-bot and sideb0ard authored Jun 27, 2023
1 parent ae9b314 commit fa646b5
Show file tree
Hide file tree
Showing 302 changed files with 995 additions and 117,492 deletions.
1 change: 1 addition & 0 deletions base/sequenced_task_runner_unittest.cc
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ class FlagOnDelete {
DISALLOW_COPY_AND_ASSIGN(FlagOnDelete);
};

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(SequencedTaskRunnerTest);
class SequencedTaskRunnerTest : public testing::Test {
protected:
SequencedTaskRunnerTest() : foreign_thread_("foreign") {}
Expand Down
2 changes: 2 additions & 0 deletions base/test/gtest_util.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
#else
// DCHECK_IS_ON() && defined(GTEST_HAS_DEATH_TEST) && !defined(OS_ANDROID)

#if !GTEST_OS_STARBOARD
// Macro copied from gtest-death-test-internal.h as it's (1) internal for now
// and (2) only defined if !GTEST_HAS_DEATH_TEST which is only a subset of the
// conditions in which it's needed here.
Expand All @@ -50,6 +51,7 @@
terminator; \
} else \
::testing::Message()
#endif // !GTEST_OS_STARBOARD

#define EXPECT_DCHECK_DEATH(statement) \
GTEST_UNSUPPORTED_DEATH_TEST(statement, "Check failed", )
Expand Down
3 changes: 3 additions & 0 deletions base/test/sequenced_task_runner_test_template.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ struct TaskEvent {
Type type;
};

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(SequencedTaskTracker);
// Utility class used in the tests below.
class SequencedTaskTracker : public RefCountedThreadSafe<SequencedTaskTracker> {
public:
Expand Down Expand Up @@ -112,6 +113,7 @@ ::testing::AssertionResult CheckNonNestableInvariants(

} // namespace internal

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(SequencedTaskRunnerTest);
template <typename TaskRunnerTestDelegate>
class SequencedTaskRunnerTest : public testing::Test {
protected:
Expand Down Expand Up @@ -312,6 +314,7 @@ REGISTER_TYPED_TEST_CASE_P(SequencedTaskRunnerTest,
DelayedTaskAfterLongTask,
DelayedTaskAfterManyLongTasks);

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(SequencedTaskRunnerDelayedTest);
template <typename TaskRunnerTestDelegate>
class SequencedTaskRunnerDelayedTest
: public SequencedTaskRunnerTest<TaskRunnerTestDelegate> {};
Expand Down
2 changes: 2 additions & 0 deletions base/test/task_runner_test_template.h
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@ class TaskTracker : public RefCountedThreadSafe<TaskTracker> {

} // namespace test

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(TaskRunnerTest);
template <typename TaskRunnerTestDelegate>
class TaskRunnerTest : public testing::Test {
protected:
Expand Down Expand Up @@ -179,6 +180,7 @@ void ExpectRunsTasksInCurrentSequence(bool expected_value,

} // namespace test

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(TaskRunnerAffinityTest);
template <typename TaskRunnerTestDelegate>
class TaskRunnerAffinityTest : public TaskRunnerTest<TaskRunnerTestDelegate> {};

Expand Down
15 changes: 15 additions & 0 deletions build_overrides/gtest.gni
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Copyright 2023 The Cobalt Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Exclude support for registering main function in multi-process tests.
gtest_include_multiprocess = true

# Exclude support for platform-specific operations across unit tests.
gtest_include_platform_test = false

# Exclude support for testing Objective C code on OS X and iOS.
gtest_include_objc_support = true

# Exclude support for flushing coverage files on iOS.
gtest_include_ios_coverage = true
1 change: 0 additions & 1 deletion cobalt/browser/memory_settings/auto_mem.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
#include "cobalt/browser/memory_settings/auto_mem_settings.h"
#include "cobalt/browser/memory_settings/memory_settings.h"
#include "cobalt/math/size.h"
#include "testing/gtest/include/gtest/gtest_prod.h"

namespace cobalt {
namespace browser {
Expand Down
2 changes: 1 addition & 1 deletion cobalt/layout/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,6 @@ target(gtest_target_type, "layout_test") {
"//cobalt/math",
"//cobalt/test:run_all_unittests",
"//testing/gmock",
"//testing/gmock",
"//testing/gtest",
]
}
1 change: 1 addition & 0 deletions cobalt/layout_tests/layout_tests.cc
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@ TEST_P(Layout, Test) {
RunTest(GetParam(), graphics_context_, pixel_tester_options);
}

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(LayoutExact);
// This test does an exact pixel compare with the expected output.
class LayoutExact : public Layout {};
TEST_P(LayoutExact, Test) {
Expand Down
8 changes: 4 additions & 4 deletions cobalt/websocket/web_socket_impl_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ class WebSocketImplTest : public ::testing::Test {
StrictMock<MockExceptionState> exception_state_;
};

TEST_F(WebSocketImplTest, NormalSizeRequest) {
TEST_F(WebSocketImplTest, DISABLED_NormalSizeRequest) {
// Normally the high watermark quota is given at websocket connection success.
AddQuota(kDefaultSendQuotaHighWaterMark);

Expand All @@ -133,7 +133,7 @@ TEST_F(WebSocketImplTest, NormalSizeRequest) {
websocket_impl_->SendText(data, k800KB, &buffered_amount, &error);
}

TEST_F(WebSocketImplTest, LargeRequest) {
TEST_F(WebSocketImplTest, DISABLED_LargeRequest) {
AddQuota(kDefaultSendQuotaHighWaterMark);

// mock_channel_ is created and used on network thread.
Expand All @@ -153,7 +153,7 @@ TEST_F(WebSocketImplTest, LargeRequest) {
&buffered_amount, &error);
}

TEST_F(WebSocketImplTest, OverLimitRequest) {
TEST_F(WebSocketImplTest, DISABLED_OverLimitRequest) {
AddQuota(kDefaultSendQuotaHighWaterMark);

// mock_channel_ is created and used on network thread.
Expand Down Expand Up @@ -188,7 +188,7 @@ TEST_F(WebSocketImplTest, OverLimitRequest) {
AddQuota(kDefaultSendQuotaHighWaterMark);
}

TEST_F(WebSocketImplTest, ReuseSocketForLargeRequest) {
TEST_F(WebSocketImplTest, DISABLED_ReuseSocketForLargeRequest) {
AddQuota(kDefaultSendQuotaHighWaterMark);

// mock_channel_ is created and used on network thread.
Expand Down
1 change: 1 addition & 0 deletions net/cert/internal/cert_issuer_source_sync_unittest.h
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,7 @@ TYPED_TEST_P(CertIssuerSourceSyncNormalizationTest,
REGISTER_TYPED_TEST_CASE_P(CertIssuerSourceSyncNormalizationTest,
MultipleMatchesAfterNormalization);

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(CertIssuerSourceSyncNotNormalizedTest);
template <typename TestDelegate>
class CertIssuerSourceSyncNotNormalizedTest
: public CertIssuerSourceSyncTest<TestDelegate> {};
Expand Down
5 changes: 5 additions & 0 deletions net/third_party/nist-pkits/pkits_testcases-inl.h
Original file line number Diff line number Diff line change
Expand Up @@ -394,6 +394,7 @@ WRAPPED_REGISTER_TYPED_TEST_CASE_P(
Section3ValidRolloverfromPrintableStringtoUTF8StringTest10,
Section3ValidUTF8StringCaseInsensitiveMatchTest11);

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(PkitsTest04BasicCertificateRevocationTests);
template <typename PkitsTestDelegate>
class PkitsTest04BasicCertificateRevocationTests
: public PkitsTest<PkitsTestDelegate> {};
Expand Down Expand Up @@ -729,6 +730,7 @@ WRAPPED_REGISTER_TYPED_TEST_CASE_P(
Section4InvalidSeparateCertificateandCRLKeysTest20,
Section4InvalidSeparateCertificateandCRLKeysTest21);

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(PkitsTest05VerifyingPathswithSelfIssuedCertificates);
template <typename PkitsTestDelegate>
class PkitsTest05VerifyingPathswithSelfIssuedCertificates
: public PkitsTest<PkitsTestDelegate> {};
Expand Down Expand Up @@ -3421,6 +3423,8 @@ WRAPPED_REGISTER_TYPED_TEST_CASE_P(
Section13InvalidURInameConstraintsTest37,
Section13InvalidDNSnameConstraintsTest38);


GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(PkitsTest14DistributionPoints);
template <typename PkitsTestDelegate>
class PkitsTest14DistributionPoints : public PkitsTest<PkitsTestDelegate> {};
TYPED_TEST_CASE_P(PkitsTest14DistributionPoints);
Expand Down Expand Up @@ -3972,6 +3976,7 @@ WRAPPED_REGISTER_TYPED_TEST_CASE_P(
Section14InvalidcRLIssuerTest34,
Section14InvalidcRLIssuerTest35);

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(PkitsTest15DeltaCRLs);
template <typename PkitsTestDelegate>
class PkitsTest15DeltaCRLs : public PkitsTest<PkitsTestDelegate> {};
TYPED_TEST_CASE_P(PkitsTest15DeltaCRLs);
Expand Down
2 changes: 2 additions & 0 deletions net/third_party/quic/core/crypto/crypto_server_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1101,6 +1101,7 @@ TEST_F(CryptoServerConfigGenerationTest, SCIDIsHashOfServerConfig) {
EXPECT_EQ(0, memcmp(digest, scid_str.c_str(), scid.size()));
}

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(CryptoServerTestNoConfig);
class CryptoServerTestNoConfig : public CryptoServerTest {
public:
void SetUp() override {
Expand All @@ -1120,6 +1121,7 @@ TEST_P(CryptoServerTestNoConfig, DontCrash) {
CheckRejectReasons(kRejectReasons, QUIC_ARRAYSIZE(kRejectReasons));
}

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(CryptoServerTestOldVersion);
class CryptoServerTestOldVersion : public CryptoServerTest {
public:
void SetUp() override {
Expand Down
1 change: 1 addition & 0 deletions net/websockets/websocket_channel_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,7 @@ using ::base::TimeDelta;

using ::testing::AnyNumber;
using ::testing::DefaultValue;
using ::testing::DoAll;
using ::testing::InSequence;
using ::testing::MockFunction;
using ::testing::NotNull;
Expand Down
1 change: 1 addition & 0 deletions starboard/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,7 @@ if (current_toolchain == starboard_toolchain) {
public_deps = [
":starboard",
"//testing/gmock",
"//testing/gtest",
]
}
}
Expand Down
1 change: 1 addition & 0 deletions starboard/nplb/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,7 @@ target(gtest_target_type, "nplb") {
"//starboard/shared/starboard/media:media_util",
"//starboard/shared/starboard/player:video_dmp",
"//testing/gmock",
"//testing/gtest",
]

deps += cobalt_platform_dependencies
Expand Down
1 change: 1 addition & 0 deletions starboard/nplb/nplb_evergreen_compat_tests/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ target(gtest_target_type, "nplb_evergreen_compat_tests") {
public_deps = [
"//starboard",
"//testing/gmock",
"//testing/gtest",
]

data_deps = [
Expand Down
1 change: 1 addition & 0 deletions starboard/nplb/socket_waiter_wait_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ namespace starboard {
namespace nplb {
namespace {

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(SbSocketWaiterWaitTest);
class SbSocketWaiterWaitTest
: public ::testing::TestWithParam<SbSocketAddressType> {
public:
Expand Down
1 change: 1 addition & 0 deletions starboard/nplb/socket_waiter_wait_timed_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ namespace starboard {
namespace nplb {
namespace {

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(SbSocketWaiterWaitTimedTest);
class SbSocketWaiterWaitTimedTest
: public ::testing::TestWithParam<SbSocketAddressType> {
public:
Expand Down
2 changes: 1 addition & 1 deletion starboard/tools/testing/test_runner.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@

_FLAKY_RETRY_LIMIT = 4
_TOTAL_TESTS_REGEX = re.compile(r"^\[==========\] (.*) tests? from .*"
r"test cases? ran. \(.* ms total\)")
r"test suites? ran. \(.* ms total\)")
_TESTS_PASSED_REGEX = re.compile(r"^\[ PASSED \] (.*) tests?")
_TESTS_FAILED_REGEX = re.compile(r"^\[ FAILED \] (.*) tests?, listed below:")
_SINGLE_TEST_FAILED_REGEX = re.compile(r"^\[ FAILED \] (.*)")
Expand Down
54 changes: 13 additions & 41 deletions testing/gmock/BUILD.gn
Original file line number Diff line number Diff line change
@@ -1,53 +1,25 @@
# Copyright 2014 The Chromium Authors. All rights reserved.
# Copyright 2014 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Modifications Copyright 2017 Google Inc. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# The file/directory layout of Google Test is not yet considered stable. Until
# it stabilizes, Chromium code MUST use this target instead of reaching directly
# into //third_party/googletest.

config("gmock_direct_config") {
include_dirs = [ "include" ]
}

static_library("gmock") {
source_set("gmock") {
testonly = true
sources = [
"include/gmock/gmock-actions.h",
"include/gmock/gmock-cardinalities.h",
"include/gmock/gmock-generated-actions.h",
"include/gmock/gmock-generated-function-mockers.h",
"include/gmock/gmock-generated-matchers.h",
"include/gmock/gmock-generated-nice-strict.h",
"include/gmock/gmock-matchers.h",
"include/gmock/gmock-spec-builders.h",
"include/gmock/gmock.h",
"include/gmock/internal/gmock-generated-internal-utils.h",
"include/gmock/internal/gmock-internal-utils.h",
"include/gmock/internal/gmock-port.h",
"src/gmock-cardinalities.cc",
"src/gmock-internal-utils.cc",
"src/gmock-matchers.cc",
"src/gmock-spec-builders.cc",
"src/gmock.cc",
"../gmock_mutant.h",
]
public_deps = [ "//third_party/googletest:gmock" ]
}

include_dirs = [ "." ]

public_configs = [ ":gmock_direct_config" ]

public_deps = [
"//testing/gtest",
]
# The file/directory layout of Google Test is not yet considered stable. Until
# it stabilizes, Chromium code MUST use this target instead of reaching directly
# into //third_party/googletest.
source_set("gmock_main") {
testonly = true
deps = [ "//third_party/googletest:gmock_main" ]
}
Loading

0 comments on commit fa646b5

Please sign in to comment.