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

Side by Side Diff: chrome/test/chromedriver/client/chromedriver.py

Issue 613163004: [chromedriver] setting browser default download directory (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Modified codes based on reviewer's comments Created 6 years, 2 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 unified diff | Download patch
OLDNEW
1 # Copyright 2013 The Chromium Authors. All rights reserved. 1 # Copyright 2013 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import command_executor 5 import command_executor
6 from command_executor import Command 6 from command_executor import Command
7 from webelement import WebElement 7 from webelement import WebElement
8 8
9 9
10 class ChromeDriverException(Exception): 10 class ChromeDriverException(Exception):
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
53 33: SessionNotCreatedException 53 33: SessionNotCreatedException
54 } 54 }
55 status = response['status'] 55 status = response['status']
56 msg = response['value']['message'] 56 msg = response['value']['message']
57 return exception_class_map.get(status, ChromeDriverException)(msg) 57 return exception_class_map.get(status, ChromeDriverException)(msg)
58 58
59 59
60 class ChromeDriver(object): 60 class ChromeDriver(object):
61 """Starts and controls a single Chrome instance on this machine.""" 61 """Starts and controls a single Chrome instance on this machine."""
62 62
63 def __init__(self, server_url, chrome_binary=None, android_package=None, 63 def __init__(self, server_url, download_dir=None, chrome_binary=None,
64 android_package=None,
samuong 2014/10/16 20:23:40 Reflow lines 63-70, or move download_dir to the en
64 android_activity=None, android_process=None, 65 android_activity=None, android_process=None,
65 android_use_running_app=None, chrome_switches=None, 66 android_use_running_app=None, chrome_switches=None,
66 chrome_extensions=None, chrome_log_path=None, 67 chrome_extensions=None, chrome_log_path=None,
67 debugger_address=None, browser_log_level=None, 68 debugger_address=None, browser_log_level=None,
68 performance_log_level=None, mobile_emulation=None, 69 performance_log_level=None, mobile_emulation=None,
69 experimental_options=None): 70 experimental_options=None):
70 self._executor = command_executor.CommandExecutor(server_url) 71 self._executor = command_executor.CommandExecutor(server_url)
71 72
72 options = {} 73 options = {}
73 74
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 109
109 logging_prefs = {} 110 logging_prefs = {}
110 log_levels = ['ALL', 'DEBUG', 'INFO', 'WARNING', 'SEVERE', 'OFF'] 111 log_levels = ['ALL', 'DEBUG', 'INFO', 'WARNING', 'SEVERE', 'OFF']
111 if browser_log_level: 112 if browser_log_level:
112 assert browser_log_level in log_levels 113 assert browser_log_level in log_levels
113 logging_prefs['browser'] = browser_log_level 114 logging_prefs['browser'] = browser_log_level
114 if performance_log_level: 115 if performance_log_level:
115 assert performance_log_level in log_levels 116 assert performance_log_level in log_levels
116 logging_prefs['performance'] = performance_log_level 117 logging_prefs['performance'] = performance_log_level
117 118
119 download_prefs = {}
120 if (download_dir):
121 default_dir = {}
122 default_dir['directory_upgrade'] = 'true'
samuong 2014/10/16 20:23:40 Does it work if you don't set directory_upgrade to
andrewcheng 2014/10/17 22:59:52 you have comment in other place - we may not need
123 default_dir['default_directory'] = download_dir
124 download_prefs['download'] = default_dir
125 options['prefs'] = download_prefs
126
118 params = { 127 params = {
119 'desiredCapabilities': { 128 'desiredCapabilities': {
120 'chromeOptions': options, 129 'chromeOptions': options,
121 'loggingPrefs': logging_prefs 130 'loggingPrefs': logging_prefs
122 } 131 }
123 } 132 }
124 133
125 response = self._ExecuteCommand(Command.NEW_SESSION, params) 134 response = self._ExecuteCommand(Command.NEW_SESSION, params)
126 self._session_id = response['sessionId'] 135 self._session_id = response['sessionId']
127 self.capabilities = self._UnwrapValue(response['value']) 136 self.capabilities = self._UnwrapValue(response['value'])
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
339 return self.ExecuteCommand(Command.GET_LOG, {'type': type}) 348 return self.ExecuteCommand(Command.GET_LOG, {'type': type})
340 349
341 def GetAvailableLogTypes(self): 350 def GetAvailableLogTypes(self):
342 return self.ExecuteCommand(Command.GET_AVAILABLE_LOG_TYPES) 351 return self.ExecuteCommand(Command.GET_AVAILABLE_LOG_TYPES)
343 352
344 def IsAutoReporting(self): 353 def IsAutoReporting(self):
345 return self.ExecuteCommand(Command.IS_AUTO_REPORTING) 354 return self.ExecuteCommand(Command.IS_AUTO_REPORTING)
346 355
347 def SetAutoReporting(self, enabled): 356 def SetAutoReporting(self, enabled):
348 self.ExecuteCommand(Command.SET_AUTO_REPORTING, {'enabled': enabled}) 357 self.ExecuteCommand(Command.SET_AUTO_REPORTING, {'enabled': enabled})
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698