Index: tools/telemetry/telemetry/internal/platform/profiler/oomkiller_profiler.py |
diff --git a/tools/telemetry/telemetry/internal/platform/profiler/oomkiller_profiler.py b/tools/telemetry/telemetry/internal/platform/profiler/oomkiller_profiler.py |
deleted file mode 100644 |
index 4aa750f24ed02b4a6a6d126cf1b52acbd564b61c..0000000000000000000000000000000000000000 |
--- a/tools/telemetry/telemetry/internal/platform/profiler/oomkiller_profiler.py |
+++ /dev/null |
@@ -1,78 +0,0 @@ |
-# Copyright 2013 The Chromium Authors. All rights reserved. |
-# Use of this source code is governed by a BSD-style license that can be |
-# found in the LICENSE file. |
- |
-import os |
- |
-from telemetry.internal.util import binary_manager |
-from telemetry.internal.backends.chrome import android_browser_finder |
-from telemetry.internal.platform import profiler |
- |
-from devil.android.sdk import intent # pylint: disable=import-error |
- |
-class UnableToFindApplicationException(Exception): |
- """Exception when unable to find a launched application""" |
- |
- def __init__(self, application): |
- super(UnableToFindApplicationException, self).__init__() |
- self.application = application |
- |
- def __str__(self): |
- return repr(self.application) |
- |
- |
-class OOMKillerProfiler(profiler.Profiler): |
- """Android-specific, Launch the music application and check it is still alive |
- at the end of the run.""" |
- |
- def __init__(self, browser_backend, platform_backend, output_path, state): |
- super(OOMKillerProfiler, self).__init__( |
- browser_backend, platform_backend, output_path, state) |
- if not 'mem_consumer_launched' in state: |
- state['mem_consumer_launched'] = True |
- arch_name = self._browser_backend.device.GetABI() |
- mem_consumer_path = binary_manager.FetchPath( |
- os.path.join('apks', 'MemConsumer.apk'), arch_name, 'android') |
- assert mem_consumer_path, ('Could not find memconsumer app. Please build ' |
- 'memconsumer target.') |
- if not self._platform_backend.CanLaunchApplication( |
- 'org.chromium.memconsumerg'): |
- self._platform_backend.InstallApplication(mem_consumer_path) |
- self._browser_backend.device.GoHome() |
- self._platform_backend.LaunchApplication( |
- 'org.chromium.memconsumer/.MemConsumer', |
- '--ei memory 20') |
- # Bring the browser to the foreground after launching the mem consumer |
- self._browser_backend.device.StartActivity( |
- intent.Intent(package=browser_backend.package, |
- activity=browser_backend.activity), |
- blocking=True) |
- |
- @classmethod |
- def name(cls): |
- return 'oomkiller' |
- |
- @classmethod |
- def is_supported(cls, browser_type): |
- if browser_type == 'any': |
- return android_browser_finder.CanFindAvailableBrowsers() |
- return browser_type.startswith('android') |
- |
- @classmethod |
- def WillCloseBrowser(cls, browser_backend, platform_backend): |
- browser_backend.device.ForceStop('org.chromium.memconsumer') |
- |
- def CollectProfile(self): |
- missing_applications = self._MissingApplications() |
- if not len(missing_applications): |
- return [] |
- raise UnableToFindApplicationException(', '.join(missing_applications)) |
- |
- def _MissingApplications(self): |
- # TODO(qsr): Add com.android.launcher to the list, when the reason why the |
- # launcher is often killed is understood. |
- must_have_apps = [ |
- 'org.chromium.memconsumer', |
- ] |
- return [app for app in must_have_apps if |
- not self._platform_backend.IsApplicationRunning(app)] |