| Index: tools/telemetry/telemetry/core/backends/chrome/cros_browser_finder.py
|
| diff --git a/tools/telemetry/telemetry/core/backends/chrome/cros_browser_finder.py b/tools/telemetry/telemetry/core/backends/chrome/cros_browser_finder.py
|
| index bca7d4446d16697d34153d82dcec21be3392cc12..ea93b3520c708ddd8661d96eb90c4ee893cc4636 100644
|
| --- a/tools/telemetry/telemetry/core/backends/chrome/cros_browser_finder.py
|
| +++ b/tools/telemetry/telemetry/core/backends/chrome/cros_browser_finder.py
|
| @@ -6,12 +6,12 @@
|
|
|
| import logging
|
|
|
| -from telemetry import decorators
|
| from telemetry.core import browser
|
| from telemetry.core import possible_browser
|
| from telemetry.core.backends.chrome import cros_browser_with_oobe
|
| from telemetry.core.backends.chrome import cros_browser_backend
|
| from telemetry.core.backends.chrome import cros_interface
|
| +from telemetry.core import platform as platform_module
|
| from telemetry.core.platform import cros_platform_backend
|
|
|
| ALL_BROWSER_TYPES = [
|
| @@ -31,29 +31,33 @@ class PossibleCrOSBrowser(possible_browser.PossibleBrowser):
|
| 'Please add %s to ALL_BROWSER_TYPES' % browser_type
|
| self._cri = cri
|
| self._is_guest = is_guest
|
| - self._platform = None
|
|
|
| def __repr__(self):
|
| return 'PossibleCrOSBrowser(browser_type=%s)' % self.browser_type
|
|
|
| - @property
|
| - @decorators.Cache
|
| - def _platform_backend(self):
|
| - return cros_platform_backend.CrosPlatformBackend(self._cri)
|
| + def _InitPlatformIfNeeded(self):
|
| + if self._platform:
|
| + return
|
| +
|
| + platform_backend = cros_platform_backend.CrosPlatformBackend(
|
| + self._cri)
|
| + self._platform = platform_module.Platform(platform_backend)
|
|
|
| def Create(self):
|
| if self.finder_options.output_profile_path:
|
| raise NotImplementedError(
|
| 'Profile generation is not yet supported on CrOS.')
|
|
|
| + self._InitPlatformIfNeeded()
|
| +
|
| browser_options = self.finder_options.browser_options
|
| backend = cros_browser_backend.CrOSBrowserBackend(
|
| browser_options, self._cri, self._is_guest,
|
| extensions_to_load=self.finder_options.extensions_to_load)
|
| if browser_options.create_browser_with_oobe:
|
| return cros_browser_with_oobe.CrOSBrowserWithOOBE(
|
| - backend, self._platform_backend)
|
| - return browser.Browser(backend, self._platform_backend)
|
| + backend, self._platform)
|
| + return browser.Browser(backend, self._platform)
|
|
|
| def SupportsOptions(self, finder_options):
|
| if (len(finder_options.extensions_to_load) != 0) and self._is_guest:
|
|
|