Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / tools / telemetry / telemetry / core / backends / chrome / android_browser_finder.py
index 24f7b56..3cf76e0 100644 (file)
@@ -10,6 +10,7 @@ import re
 import subprocess
 import sys
 
 import subprocess
 import sys
 
+from telemetry import decorators
 from telemetry.core import browser
 from telemetry.core import possible_browser
 from telemetry.core import util
 from telemetry.core import browser
 from telemetry.core import possible_browser
 from telemetry.core import util
@@ -17,6 +18,7 @@ from telemetry.core.backends import adb_commands
 from telemetry.core.backends.chrome import android_browser_backend
 from telemetry.core.platform import android_platform_backend
 
 from telemetry.core.backends.chrome import android_browser_backend
 from telemetry.core.platform import android_platform_backend
 
+
 CHROME_PACKAGE_NAMES = {
   'android-content-shell':
       ['org.chromium.content_shell_apk',
 CHROME_PACKAGE_NAMES = {
   'android-content-shell':
       ['org.chromium.content_shell_apk',
@@ -85,16 +87,22 @@ class PossibleAndroidBrowser(possible_browser.PossibleBrowser):
   def __repr__(self):
     return 'PossibleAndroidBrowser(browser_type=%s)' % self.browser_type
 
   def __repr__(self):
     return 'PossibleAndroidBrowser(browser_type=%s)' % self.browser_type
 
+  @property
+  @decorators.Cache
+  def _platform_backend(self):
+    return android_platform_backend.AndroidPlatformBackend(
+        self._backend_settings.adb.Adb(),
+        self.finder_options.no_performance_mode)
+
   def Create(self):
   def Create(self):
+    use_rndis_forwarder = (self.finder_options.android_rndis or
+                           self.finder_options.browser_options.netsim)
     backend = android_browser_backend.AndroidBrowserBackend(
         self.finder_options.browser_options, self._backend_settings,
     backend = android_browser_backend.AndroidBrowserBackend(
         self.finder_options.browser_options, self._backend_settings,
-        self.finder_options.android_rndis,
+        use_rndis_forwarder,
         output_profile_path=self.finder_options.output_profile_path,
         extensions_to_load=self.finder_options.extensions_to_load)
         output_profile_path=self.finder_options.output_profile_path,
         extensions_to_load=self.finder_options.extensions_to_load)
-    platform_backend = android_platform_backend.AndroidPlatformBackend(
-        self._backend_settings.adb.Adb(),
-        self.finder_options.no_performance_mode)
-    b = browser.Browser(backend, platform_backend)
+    b = browser.Browser(backend, self._platform_backend)
     return b
 
   def SupportsOptions(self, finder_options):
     return b
 
   def SupportsOptions(self, finder_options):