diff options
author | jochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-07-24 19:34:04 +0000 |
---|---|---|
committer | jochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-07-24 19:34:04 +0000 |
commit | 7f0aac7ca1992938a0a173dd0c38cd8acd989552 (patch) | |
tree | 9734c7f57f08756a972de6768bda343c64b7b9fa /base | |
parent | 58af7fff62de19ca13b0747843b69d34dd9a0522 (diff) | |
download | chromium_src-7f0aac7ca1992938a0a173dd0c38cd8acd989552.zip chromium_src-7f0aac7ca1992938a0a173dd0c38cd8acd989552.tar.gz chromium_src-7f0aac7ca1992938a0a173dd0c38cd8acd989552.tar.bz2 |
Disable timeouts when we detect that a debugger is attached to a test.
BUG=none
R=phajdan.jr@chromium.org
Review URL: https://chromiumcodereview.appspot.com/19786014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213490 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base')
-rw-r--r-- | base/test/test_timeouts.cc | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/base/test/test_timeouts.cc b/base/test/test_timeouts.cc index e8e4153..ed689c28 100644 --- a/base/test/test_timeouts.cc +++ b/base/test/test_timeouts.cc @@ -5,6 +5,7 @@ #include "base/test/test_timeouts.h" #include "base/command_line.h" +#include "base/debug/debugger.h" #include "base/logging.h" #include "base/strings/string_number_conversions.h" #include "base/test/test_switches.h" @@ -19,6 +20,8 @@ static const int kTimeoutMultiplier = 2; static const int kTimeoutMultiplier = 1; #endif +const int kAlmostInfiniteTimeoutMs = 100000000; + // Sets value to the greatest of: // 1) value's current value multiplied by kTimeoutMultiplier (assuming // InitializeTimeout is called only once per value). @@ -71,10 +74,17 @@ void TestTimeouts::Initialize() { } initialized_ = true; + if (base::debug::BeingDebugged()) { + fprintf(stdout, + "Detected presence of a debugger, running without test timeouts.\n"); + } + // Note that these timeouts MUST be initialized in the correct order as // per the CHECKS below. InitializeTimeout(switches::kTestTinyTimeout, &tiny_timeout_ms_); - InitializeTimeout(switches::kUiTestActionTimeout, tiny_timeout_ms_, + InitializeTimeout(switches::kUiTestActionTimeout, + base::debug::BeingDebugged() ? kAlmostInfiniteTimeoutMs + : tiny_timeout_ms_, &action_timeout_ms_); InitializeTimeout(switches::kUiTestActionMaxTimeout, action_timeout_ms_, &action_max_timeout_ms_); |