Index: content/test/browser_test_base.cc |
=================================================================== |
--- content/test/browser_test_base.cc (revision 151499) |
+++ content/test/browser_test_base.cc (working copy) |
@@ -1,96 +0,0 @@ |
-// Copyright (c) 2011 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 "content/public/test/browser_test_base.h" |
- |
-#include "base/bind.h" |
-#include "base/command_line.h" |
-#include "base/debug/stack_trace.h" |
-#include "base/process_util.h" |
-#include "content/public/common/content_switches.h" |
-#include "content/public/common/main_function_params.h" |
-#include "sandbox/win/src/dep.h" |
- |
-#if defined(OS_MACOSX) |
-#include "base/mac/mac_util.h" |
-#include "base/system_monitor/system_monitor.h" |
-#endif |
- |
-extern int BrowserMain(const content::MainFunctionParams&); |
- |
-namespace { |
- |
-#if defined(OS_POSIX) |
-// On SIGTERM (sent by the runner on timeouts), dump a stack trace (to make |
-// debugging easier) and also exit with a known error code (so that the test |
-// framework considers this a failure -- http://crbug.com/57578). |
-// Note: We only want to do this in the browser process, and not forked |
-// processes. That might lead to hangs because of locks inside tcmalloc or the |
-// OS. See http://crbug.com/141302. |
-static int g_browser_process_pid; |
-static void DumpStackTraceSignalHandler(int signal) { |
- if (g_browser_process_pid == base::GetCurrentProcId()) |
- base::debug::StackTrace().PrintBacktrace(); |
- _exit(128 + signal); |
-} |
-#endif // defined(OS_POSIX) |
- |
-} // namespace |
- |
-namespace content { |
- |
-BrowserTestBase::BrowserTestBase() { |
-#if defined(OS_MACOSX) |
- base::mac::SetOverrideAmIBundled(true); |
- base::SystemMonitor::AllocateSystemIOPorts(); |
-#endif |
- |
-#if defined(OS_POSIX) |
- handle_sigterm_ = true; |
-#endif |
-} |
- |
-BrowserTestBase::~BrowserTestBase() { |
-} |
- |
-void BrowserTestBase::SetUp() { |
- CommandLine* command_line = CommandLine::ForCurrentProcess(); |
- |
- // The tests assume that file:// URIs can freely access other file:// URIs. |
- command_line->AppendSwitch(switches::kAllowFileAccessFromFiles); |
- |
- command_line->AppendSwitch(switches::kDomAutomationController); |
- |
- MainFunctionParams params(*command_line); |
- params.ui_task = |
- new base::Closure( |
- base::Bind(&BrowserTestBase::ProxyRunTestOnMainThreadLoop, this)); |
- |
- SetUpInProcessBrowserTestFixture(); |
- BrowserMain(params); |
- TearDownInProcessBrowserTestFixture(); |
-} |
- |
-void BrowserTestBase::TearDown() { |
-} |
- |
-void BrowserTestBase::ProxyRunTestOnMainThreadLoop() { |
-#if defined(OS_POSIX) |
- if (handle_sigterm_) { |
- g_browser_process_pid = base::GetCurrentProcId(); |
- signal(SIGTERM, DumpStackTraceSignalHandler); |
- } |
-#endif // defined(OS_POSIX) |
- RunTestOnMainThreadLoop(); |
-} |
- |
-void BrowserTestBase::CreateTestServer(const char* test_server_base) { |
- CHECK(!test_server_.get()); |
- test_server_.reset(new net::TestServer( |
- net::TestServer::TYPE_HTTP, |
- net::TestServer::kLocalhost, |
- FilePath().AppendASCII(test_server_base))); |
-} |
- |
-} // namespace content |