summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--DEPS4
-rw-r--r--build_overrides/gtest.gni9
-rw-r--r--testing/multiprocess_func_list.cc55
-rw-r--r--testing/multiprocess_func_list.h72
4 files changed, 11 insertions, 129 deletions
diff --git a/DEPS b/DEPS
index 1e6ec803b0..c6a15d981d 100644
--- a/DEPS
+++ b/DEPS
@@ -4,9 +4,9 @@ vars = {
'chromium_git': 'https://chromium.googlesource.com',
'pdfium_git': 'https://pdfium.googlesource.com',
- 'build_revision': '4d35c0d78ccf35b1597b9dd4adad52203916a01f',
+ 'build_revision': '2f91397926336dd46ea49ffef702197b9cc2215a',
'buildtools_revision': '5378d73123b64907773cc5c1bb027b2f765ff00a',
- 'clang_revision': '9dc1904d214a77f081362c1b848b5f28d2192748',
+ 'clang_revision': '2956eca572ff0e1b181df65f71a045f061a2eb34',
'cygwin_revision': 'c89e446b273697fadf3a10ff1007a97c0b7de6df',
'gmock_revision': '29763965ab52f24565299976b936d1265cb6a271',
'gtest_revision': '8245545b6dc9c4703e6496d1efd19e975ad2b038',
diff --git a/build_overrides/gtest.gni b/build_overrides/gtest.gni
new file mode 100644
index 0000000000..6089962ada
--- /dev/null
+++ b/build_overrides/gtest.gni
@@ -0,0 +1,9 @@
+# Copyright 2016 The Chromium Authors. All rights reserved.
+# 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 = false
+
+# Exclude support for platform-specific operations across unit tests.
+gtest_include_platform_test = false
diff --git a/testing/multiprocess_func_list.cc b/testing/multiprocess_func_list.cc
deleted file mode 100644
index a400557445..0000000000
--- a/testing/multiprocess_func_list.cc
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "multiprocess_func_list.h"
-
-#include <map>
-
-// Helper functions to maintain mapping of "test name"->test func.
-// The information is accessed via a global map.
-namespace multi_process_function_list {
-
-namespace {
-
-struct ProcessFunctions {
- ProcessFunctions() : main(NULL), setup(NULL) {}
- ProcessFunctions(TestMainFunctionPtr main, SetupFunctionPtr setup)
- : main(main), setup(setup) {}
- TestMainFunctionPtr main;
- SetupFunctionPtr setup;
-};
-
-typedef std::map<std::string, ProcessFunctions> MultiProcessTestMap;
-
-// Retrieve a reference to the global 'func name' -> func ptr map.
-MultiProcessTestMap& GetMultiprocessFuncMap() {
- static MultiProcessTestMap test_name_to_func_ptr_map;
- return test_name_to_func_ptr_map;
-}
-
-} // namespace
-
-AppendMultiProcessTest::AppendMultiProcessTest(
- std::string test_name,
- TestMainFunctionPtr main_func_ptr,
- SetupFunctionPtr setup_func_ptr) {
- GetMultiprocessFuncMap()[test_name] =
- ProcessFunctions(main_func_ptr, setup_func_ptr);
-}
-
-int InvokeChildProcessTest(std::string test_name) {
- MultiProcessTestMap& func_lookup_table = GetMultiprocessFuncMap();
- MultiProcessTestMap::iterator it = func_lookup_table.find(test_name);
- if (it != func_lookup_table.end()) {
- const ProcessFunctions& process_functions = it->second;
- if (process_functions.setup)
- (*process_functions.setup)();
- if (process_functions.main)
- return (*process_functions.main)();
- }
-
- return -1;
-}
-
-} // namespace multi_process_function_list
diff --git a/testing/multiprocess_func_list.h b/testing/multiprocess_func_list.h
deleted file mode 100644
index 2ec4d7d975..0000000000
--- a/testing/multiprocess_func_list.h
+++ /dev/null
@@ -1,72 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef TESTING_MULTIPROCESS_FUNC_LIST_H_
-#define TESTING_MULTIPROCESS_FUNC_LIST_H_
-
-#include <string>
-
-// This file provides the plumbing to register functions to be executed
-// as the main function of a child process in a multi-process test.
-// This complements the MultiProcessTest class which provides facilities
-// for launching such tests.
-//
-// The MULTIPROCESS_TEST_MAIN() macro registers a string -> func_ptr mapping
-// by creating a new global instance of the AppendMultiProcessTest() class
-// this means that by the time that we reach our main() function the mapping
-// is already in place.
-//
-// Example usage:
-// MULTIPROCESS_TEST_MAIN(a_test_func) {
-// // Code here runs in a child process.
-// return 0;
-// }
-//
-// The prototype of a_test_func is implicitly
-// int test_main_func_name();
-
-namespace multi_process_function_list {
-
-// Type for child process main functions.
-typedef int (*TestMainFunctionPtr)();
-
-// Type for child setup functions.
-typedef void (*SetupFunctionPtr)();
-
-// Helper class to append a test function to the global mapping.
-// Used by the MULTIPROCESS_TEST_MAIN macro.
-class AppendMultiProcessTest {
- public:
- // |main_func_ptr| is the main function that is run in the child process.
- // |setup_func_ptr| is a function run when the global mapping is added.
- AppendMultiProcessTest(std::string test_name,
- TestMainFunctionPtr main_func_ptr,
- SetupFunctionPtr setup_func_ptr);
-};
-
-// Invoke the main function of a test previously registered with
-// MULTIPROCESS_TEST_MAIN()
-int InvokeChildProcessTest(std::string test_name);
-
-// This macro creates a global MultiProcessTest::AppendMultiProcessTest object
-// whose constructor does the work of adding the global mapping.
-#define MULTIPROCESS_TEST_MAIN(test_main) \
- MULTIPROCESS_TEST_MAIN_WITH_SETUP(test_main, NULL)
-
-// Same as above but lets callers specify a setup method that is run in the
-// child process, just before the main function is run. This facilitates
-// adding a generic one-time setup function for multiple tests.
-#define MULTIPROCESS_TEST_MAIN_WITH_SETUP(test_main, test_setup) \
- int test_main(); \
- namespace { \
- multi_process_function_list::AppendMultiProcessTest \
- AddMultiProcessTest##_##test_main(#test_main, \
- (test_main), \
- (test_setup)); \
- } \
- int test_main()
-
-} // namespace multi_process_function_list
-
-#endif // TESTING_MULTIPROCESS_FUNC_LIST_H_