Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / tools / telemetry / telemetry / core / possible_browser.py
index 21d51e8..c53686d 100644 (file)
@@ -2,7 +2,6 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
-from telemetry.core import platform
 
 
 class PossibleBrowser(object):
@@ -11,11 +10,14 @@ class PossibleBrowser(object):
   Call Create() to launch the browser and begin manipulating it..
   """
 
-  def __init__(self, browser_type, target_os, finder_options):
+  def __init__(self, browser_type, target_os, finder_options,
+               supports_tab_control):
     self._browser_type = browser_type
     self._target_os = target_os
     self._finder_options = finder_options
+    self._supports_tab_control = supports_tab_control
     self._platform = None
+    self._platform_backend = None
 
   def __repr__(self):
     return 'PossibleBrowser(browser_type=%s)' % self.browser_type
@@ -34,11 +36,17 @@ class PossibleBrowser(object):
     return self._finder_options
 
   @property
+  def supports_tab_control(self):
+    return self._supports_tab_control
+
+  @property
   def platform(self):
-    if not self._platform:
-      self._platform = platform.Platform(self._platform_backend)
+    self._InitPlatformIfNeeded()
     return self._platform
 
+  def _InitPlatformIfNeeded(self):
+    raise NotImplementedError()
+
   def Create(self):
     raise NotImplementedError()