OLD | NEW |
---|---|
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 Loading... | |
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 Loading... | |
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 |
OLD | NEW |