Bug 1118868 - Kill the Android emulators no matter what. r=gbrown
authorArmen Zambrano Gasparnian <armenzg@mozilla.com>
Wed, 07 Jan 2015 15:54:58 -0500 (2015-01-07)
changeset 3519 28f0e305203848d0b7a5c07e78d4e21c80e2ac18
parent 3518 5371983056ce263e44025c0cfea7b4f9944a56e0
child 3520 7fed494a6a8d22460d58b12d50ac346208043a76
push id2739
push userarmenzg@mozilla.com
push dateWed, 07 Jan 2015 20:56:05 +0000 (2015-01-07)
reviewersgbrown
bugs1118868
Bug 1118868 - Kill the Android emulators no matter what. r=gbrown
scripts/android_emulator_unittest.py
--- a/scripts/android_emulator_unittest.py
+++ b/scripts/android_emulator_unittest.py
@@ -14,17 +14,17 @@ import subprocess
 import telnetlib
 import time
 import tempfile
 
 # load modules from parent dir
 sys.path.insert(1, os.path.dirname(sys.path[0]))
 
 from mozharness.base.log import FATAL
-from mozharness.base.script import BaseScript
+from mozharness.base.script import BaseScript, PostScriptRun
 from mozharness.base.vcs.vcsbase import VCSMixin
 from mozharness.mozilla.blob_upload import BlobUploadMixin, blobupload_config_options
 from mozharness.mozilla.mozbase import MozbaseMixin
 from mozharness.mozilla.buildbot import TBPL_WORST_LEVEL_TUPLE
 from mozharness.mozilla.testing.testbase import TestingMixin, testing_config_options
 from mozharness.mozilla.testing.unittest import EmulatorMixin
 from mozharness.mozilla.tooltool import TooltoolMixin
 
@@ -351,19 +351,18 @@ class AndroidEmulatorTest(BlobUploadMixi
         out, err = p.communicate()
         self.info("Let's kill every process called %s" % process_name)
         for line in out.splitlines():
             if process_name in line:
                 pid = int(line.split(None, 1)[0])
                 self.info("Killing pid %d." % pid)
                 os.kill(pid, signal.SIGKILL)
 
-    def _post_fatal(self, message=None, exit_code=None):
-        """ After we call fatal(), run this method before exiting.
-        """
+    @PostScriptRun
+    def _post_script(self):
         self._kill_processes(self.config["emulator_process_name"])
 
     # XXX: This and android_panda.py's function might make sense to take higher up
     def _download_robocop_apk(self):
         dirs = self.query_abs_dirs()
         self.apk_url = self.installer_url[:self.installer_url.rfind('/')]
         robocop_url = self.apk_url + '/robocop.apk'
         self.info("Downloading robocop...")