summaryrefslogtreecommitdiffstats
path: root/chrome/test
diff options
context:
space:
mode:
authorrobertshield@chromium.org <robertshield@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-21 17:44:21 +0000
committerrobertshield@chromium.org <robertshield@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-21 17:44:21 +0000
commit78859c7d87db4433d068533b104c7c1addf7e7eb (patch)
treeb7b18680a94067037050604ead9f684a82f9caf9 /chrome/test
parentbdfa7d0e6114af9170139bc80be2986a0e8a4c61 (diff)
downloadchromium_src-78859c7d87db4433d068533b104c7c1addf7e7eb.zip
chromium_src-78859c7d87db4433d068533b104c7c1addf7e7eb.tar.gz
chromium_src-78859c7d87db4433d068533b104c7c1addf7e7eb.tar.bz2
Ensure correct timeout ordering for timeout values managed by test_timeouts.cc.
Also actually call the timeout initialization when running mini_installer_tests.exe. BUG=0 TEST=0 Review URL: http://codereview.chromium.org/3447009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60070 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/test')
-rw-r--r--chrome/test/mini_installer_test/run_all_unittests.cc4
-rw-r--r--chrome/test/test_timeouts.cc36
2 files changed, 29 insertions, 11 deletions
diff --git a/chrome/test/mini_installer_test/run_all_unittests.cc b/chrome/test/mini_installer_test/run_all_unittests.cc
index a0f6159..13229d2 100644
--- a/chrome/test/mini_installer_test/run_all_unittests.cc
+++ b/chrome/test/mini_installer_test/run_all_unittests.cc
@@ -9,6 +9,7 @@
#include "chrome/common/chrome_switches.h"
#include "chrome/installer/util/util_constants.h"
#include "chrome/test/mini_installer_test/mini_installer_test_constants.h"
+#include "chrome/test/test_timeouts.h"
#include "chrome_mini_installer.h"
void BackUpProfile(bool chrome_frame) {
@@ -69,5 +70,8 @@ int main(int argc, char** argv) {
return 1;
}
+ // Initialize the timeouts used by the test.
+ TestTimeouts::Initialize();
+
return test_suite.Run();
}
diff --git a/chrome/test/test_timeouts.cc b/chrome/test/test_timeouts.cc
index 2f7a1bc..c75d857 100644
--- a/chrome/test/test_timeouts.cc
+++ b/chrome/test/test_timeouts.cc
@@ -11,7 +11,11 @@
namespace {
-void InitializeTimeout(const char* switch_name, int* value) {
+// Sets value to the greatest of:
+// 1) value's current value.
+// 2) min_value.
+// 3) the numerical value given by switch_name on the command line.
+void InitializeTimeout(const char* switch_name, int min_value, int* value) {
DCHECK(value);
if (CommandLine::ForCurrentProcess()->HasSwitch(switch_name)) {
std::string string_value(
@@ -20,6 +24,15 @@ void InitializeTimeout(const char* switch_name, int* value) {
base::StringToInt(string_value, &timeout);
*value = std::max(*value, timeout);
}
+ *value = std::max(*value, min_value);
+}
+
+// Sets value to the greatest of:
+// 1) value's current value.
+// 2) 0
+// 3) the numerical value given by switch_name on the command line.
+void InitializeTimeout(const char* switch_name, int* value) {
+ InitializeTimeout(switch_name, 0, value);
}
} // namespace
@@ -54,20 +67,21 @@ void TestTimeouts::Initialize() {
}
initialized_ = true;
- // The timeout values should be increasing in the right order, and while
- // initially they are, overrides may not respect this. Move the checks to
- // before the point at which they get overridden while all build scripts
- // are updated.
- // TODO(robertshield): Move these checks back once the bots are updated.
+ // Note that these timeouts MUST be initialized in the correct order as
+ // per the CHECKS below.
+ InitializeTimeout(switches::kUiTestActionTimeout, &action_timeout_ms_);
+ InitializeTimeout(switches::kUiTestActionMaxTimeout, action_timeout_ms_,
+ &action_max_timeout_ms_);
+ InitializeTimeout(switches::kTestLargeTimeout, action_max_timeout_ms_,
+ &large_test_timeout_ms_);
+ InitializeTimeout(switches::kUiTestTimeout, large_test_timeout_ms_,
+ &huge_test_timeout_ms_);
+
+ // The timeout values should be increasing in the right order.
CHECK(action_timeout_ms_ <= action_max_timeout_ms_);
CHECK(action_max_timeout_ms_ <= large_test_timeout_ms_);
CHECK(large_test_timeout_ms_ <= huge_test_timeout_ms_);
- InitializeTimeout(switches::kUiTestActionTimeout, &action_timeout_ms_);
- InitializeTimeout(switches::kUiTestActionMaxTimeout, &action_max_timeout_ms_);
- InitializeTimeout(switches::kTestLargeTimeout, &large_test_timeout_ms_);
- InitializeTimeout(switches::kUiTestTimeout, &huge_test_timeout_ms_);
-
InitializeTimeout(switches::kUiTestSleepTimeout, &sleep_timeout_ms_);
InitializeTimeout(switches::kUiTestCommandExecutionTimeout,
&command_execution_timeout_ms_);