Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(802)

Unified Diff: chrome/test/webdriver/automation.cc

Issue 7640017: Disable pyauto tests on mac that requires py2.6. Fix 2 failing chromedriver (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: ... Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/test/webdriver/automation.h ('k') | chrome/test/webdriver/commands/create_session.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/webdriver/automation.cc
diff --git a/chrome/test/webdriver/automation.cc b/chrome/test/webdriver/automation.cc
index 6b2449eb097b4ecae48bef0e1c1e74c09514bc7c..acca8e85ec3ae644d3792eadc62c02275fb470e7 100644
--- a/chrome/test/webdriver/automation.cc
+++ b/chrome/test/webdriver/automation.cc
@@ -184,7 +184,7 @@ bool GetDefaultChromeExe(FilePath* browser_exe) {
namespace webdriver {
Automation::BrowserOptions::BrowserOptions()
- : cmdline(CommandLine::NO_PROGRAM) {}
+ : command(CommandLine::NO_PROGRAM) {}
Automation::BrowserOptions::~BrowserOptions() {}
@@ -193,48 +193,51 @@ Automation::Automation() {}
Automation::~Automation() {}
void Automation::Init(const BrowserOptions& options, Error** error) {
- CommandLine cmdline = options.cmdline;
- if (cmdline.GetProgram().empty()) {
+ // Prepare Chrome's command line.
+ CommandLine command(CommandLine::NO_PROGRAM);
+ command.AppendSwitch(switches::kDisableHangMonitor);
+ command.AppendSwitch(switches::kDisablePromptOnRepost);
+ command.AppendSwitch(switches::kDomAutomationController);
+ command.AppendSwitch(switches::kFullMemoryCrashReport);
+ command.AppendSwitch(switches::kNoDefaultBrowserCheck);
+ command.AppendSwitch(switches::kNoFirstRun);
+ if (options.user_data_dir.empty())
+ command.AppendSwitchASCII(switches::kHomePage, chrome::kAboutBlankURL);
+
+ command.AppendArguments(options.command, true /* include_program */);
+
+ // Find the Chrome binary.
+ if (command.GetProgram().empty()) {
FilePath browser_exe;
if (!GetDefaultChromeExe(&browser_exe)) {
*error = new Error(kUnknownError, "Could not find default Chrome binary");
return;
}
- cmdline.SetProgram(browser_exe);
+ command.SetProgram(browser_exe);
}
- if (!file_util::PathExists(cmdline.GetProgram())) {
+ if (!file_util::PathExists(command.GetProgram())) {
std::string message = base::StringPrintf(
"Could not find Chrome binary at: %" PRFilePath,
- cmdline.GetProgram().value().c_str());
+ command.GetProgram().value().c_str());
*error = new Error(kUnknownError, message);
return;
}
std::string chrome_details = base::StringPrintf(
"Using Chrome binary at: %" PRFilePath,
- cmdline.GetProgram().value().c_str());
+ command.GetProgram().value().c_str());
LOG(INFO) << chrome_details;
- cmdline.AppendSwitch(switches::kDisableHangMonitor);
- cmdline.AppendSwitch(switches::kDisablePromptOnRepost);
- cmdline.AppendSwitch(switches::kDomAutomationController);
- cmdline.AppendSwitch(switches::kFullMemoryCrashReport);
- cmdline.AppendSwitch(switches::kNoDefaultBrowserCheck);
- cmdline.AppendSwitch(switches::kNoFirstRun);
-
- if (options.user_data_dir.empty())
- cmdline.AppendSwitchASCII(switches::kHomePage, chrome::kAboutBlankURL);
-
+ // Create the ProxyLauncher and launch Chrome.
if (options.channel_id.empty()) {
launcher_.reset(new AnonymousProxyLauncher(false));
} else {
launcher_.reset(new NamedProxyLauncher(options.channel_id, false, false));
}
-
ProxyLauncher::LaunchState launch_props = {
false, // clear_profile
options.user_data_dir, // template_user_data
base::Closure(),
- cmdline,
+ command,
true, // include_testing_id
true // show_window
};
@@ -251,6 +254,7 @@ void Automation::Init(const BrowserOptions& options, Error** error) {
LOG(INFO) << "Chrome launched successfully. Version: "
<< automation()->server_version();
+ // Check the version of Chrome is compatible with this ChromeDriver.
chrome_details += ", version (" + automation()->server_version() + ")";
int version = 0;
std::string error_msg;
« no previous file with comments | « chrome/test/webdriver/automation.h ('k') | chrome/test/webdriver/commands/create_session.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698