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

Side by Side Diff: tools/telemetry/telemetry/core/browser_finder.py

Issue 20672002: [telemetry] Add a webdriver backend with support for IE. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 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 unified diff | Download patch
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 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 """Finds browsers that can be controlled by telemetry.""" 4 """Finds browsers that can be controlled by telemetry."""
5 5
6 import logging 6 import logging
7 7
8 from telemetry.core.chrome import android_browser_finder 8 from telemetry.core.chrome import android_browser_finder
9 from telemetry.core.chrome import cros_browser_finder 9 from telemetry.core.chrome import cros_browser_finder
10 from telemetry.core.chrome import desktop_browser_finder 10 from telemetry.core.chrome import desktop_browser_finder
11 from telemetry.core.webdriver import webdriver_desktop_browser_finder
11 12
12 ALL_BROWSER_TYPES = ( 13 ALL_BROWSER_TYPES = (
14 webdriver_desktop_browser_finder.ALL_BROWSER_TYPES + ',' +
13 desktop_browser_finder.ALL_BROWSER_TYPES + ',' + 15 desktop_browser_finder.ALL_BROWSER_TYPES + ',' +
14 android_browser_finder.ALL_BROWSER_TYPES + ',' + 16 android_browser_finder.ALL_BROWSER_TYPES + ',' +
15 cros_browser_finder.ALL_BROWSER_TYPES) 17 cros_browser_finder.ALL_BROWSER_TYPES)
16 18
17 class BrowserTypeRequiredException(Exception): 19 class BrowserTypeRequiredException(Exception):
18 pass 20 pass
19 21
20 class BrowserFinderException(Exception): 22 class BrowserFinderException(Exception):
21 pass 23 pass
22 24
(...skipping 17 matching lines...) Expand all
40 if (options.browser_type != 'cros-chrome' and 42 if (options.browser_type != 'cros-chrome' and
41 options.browser_type != 'cros-chrome-guest' and 43 options.browser_type != 'cros-chrome-guest' and
42 options.cros_remote != None): 44 options.cros_remote != None):
43 raise BrowserFinderException( 45 raise BrowserFinderException(
44 'cros_remote requires browser_type=cros-chrome or cros-chrome-guest.') 46 'cros_remote requires browser_type=cros-chrome or cros-chrome-guest.')
45 47
46 if options.browser_type == None: 48 if options.browser_type == None:
47 raise BrowserTypeRequiredException('browser_type must be specified') 49 raise BrowserTypeRequiredException('browser_type must be specified')
48 50
49 browsers = [] 51 browsers = []
52 browsers.extend(
53 webdriver_desktop_browser_finder.FindAllAvailableBrowsers(options))
tonyg 2013/07/26 18:21:07 Note: You'll have to rebase after: https://chromiu
chrisgao (Use stgao instead) 2013/07/30 02:06:49 Done.
50 browsers.extend(desktop_browser_finder.FindAllAvailableBrowsers(options)) 54 browsers.extend(desktop_browser_finder.FindAllAvailableBrowsers(options))
51 browsers.extend(android_browser_finder.FindAllAvailableBrowsers(options)) 55 browsers.extend(android_browser_finder.FindAllAvailableBrowsers(options))
52 browsers.extend(cros_browser_finder.FindAllAvailableBrowsers(options)) 56 browsers.extend(cros_browser_finder.FindAllAvailableBrowsers(options))
53 57
54 if options.browser_type == 'any': 58 if options.browser_type == 'any':
55 types = ALL_BROWSER_TYPES.split(',') 59 types = ALL_BROWSER_TYPES.split(',')
56 def compare_browsers_on_type_priority(x, y): 60 def compare_browsers_on_type_priority(x, y):
57 x_idx = types.index(x.browser_type) 61 x_idx = types.index(x.browser_type)
58 y_idx = types.index(y.browser_type) 62 y_idx = types.index(y.browser_type)
59 return x_idx - y_idx 63 return x_idx - y_idx
(...skipping 14 matching lines...) Expand all
74 return matching_browsers[0] 78 return matching_browsers[0]
75 else: 79 else:
76 return None 80 return None
77 81
78 def GetAllAvailableBrowserTypes(options): 82 def GetAllAvailableBrowserTypes(options):
79 """Returns an array of browser types supported on this system. 83 """Returns an array of browser types supported on this system.
80 A BrowserFinderException will be raised if the BrowserOptions argument is 84 A BrowserFinderException will be raised if the BrowserOptions argument is
81 improperly set or if an error occurs when finding a browser. 85 improperly set or if an error occurs when finding a browser.
82 """ 86 """
83 browsers = [] 87 browsers = []
88 browsers.extend(
89 webdriver_desktop_browser_finder.FindAllAvailableBrowsers(options))
84 browsers.extend(desktop_browser_finder.FindAllAvailableBrowsers(options)) 90 browsers.extend(desktop_browser_finder.FindAllAvailableBrowsers(options))
85 browsers.extend(android_browser_finder.FindAllAvailableBrowsers(options)) 91 browsers.extend(android_browser_finder.FindAllAvailableBrowsers(options))
86 browsers.extend(cros_browser_finder.FindAllAvailableBrowsers(options)) 92 browsers.extend(cros_browser_finder.FindAllAvailableBrowsers(options))
87 93
88 type_list = set([browser.browser_type for browser in browsers]) 94 type_list = set([browser.browser_type for browser in browsers])
89 type_list = list(type_list) 95 type_list = list(type_list)
90 type_list.sort() 96 type_list.sort()
91 return type_list 97 return type_list
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698