Only run crashinfo collection when Autoserv exited due to some signal -- not just when it failed.  Also make a minor fixup to some logging during process recovery.

Signed-off-by: Steve Howard <showard@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3098 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/scheduler/monitor_db_unittest.py b/scheduler/monitor_db_unittest.py
index 342ab7d..1517207 100644
--- a/scheduler/monitor_db_unittest.py
+++ b/scheduler/monitor_db_unittest.py
@@ -1650,13 +1650,20 @@
         self.god.check_playback()
 
 
-    def _setup_gather_logs_expects(self, autoserv_success=False,
+    def _setup_gather_logs_expects(self, autoserv_killed=True,
                                    hqe_aborted=False):
         self.god.stub_class(monitor_db, 'PidfileRunMonitor')
         self.god.stub_class(monitor_db, 'FinalReparseTask')
-        self._setup_post_job_task_expects(autoserv_success, 'Gathering',
+        self._setup_post_job_task_expects(not autoserv_killed, 'Gathering',
                                           hqe_aborted)
-        if not autoserv_success or hqe_aborted:
+        if hqe_aborted:
+            exit_code = None
+        elif autoserv_killed:
+            exit_code = 271
+        else:
+            exit_code = 0
+        self.pidfile_monitor.exit_code.expect_call().and_return(exit_code)
+        if exit_code != 0:
             self._setup_post_job_run_monitor('.collect_crashinfo_execute')
         self._expect_copy_results(monitor=self.pidfile_monitor,
                                   queue_entry=self.queue_entry)
@@ -1683,8 +1690,8 @@
 
 
     def test_gather_logs_task_successful_autoserv(self):
-        # When Autoserv exits successful, no collect_crashinfo stage runs
-        self._setup_gather_logs_expects(autoserv_success=True)
+        # When Autoserv exits successfully, no collect_crashinfo stage runs
+        self._setup_gather_logs_expects(autoserv_killed=False)
         self.job.reboot_after = models.RebootAfter.NEVER
         self.host.set_status.expect_call('Ready')