Exemplo n.º 1
0
def _finish(job_id, status):
    with session_transaction() as session:
        job = Job.load(job_id, session)
        job.status = status
        job.ts_end = timestamp()
        job.update(['status', 'ts_end'], session)
        scan_id = job.scan.id
    scanctrl.check_finished(scan_id)
Exemplo n.º 2
0
 def test_scan_job_error(self):
     scan_id = scan_ctrl.new(self.scanid, self.userid, 10)
     job_ids = []
     for i in xrange(0, 10):
         for probe in ['probe1', 'probe2']:
             job_ids.append(job_ctrl.new(scan_id, "file-{0}".format(i),
                                         probe, 1))
     scan_ctrl.launched(scan_id)
     shuffle(job_ids)
     for job_id in job_ids:
         job_ctrl.error(job_id)
     self.assertTrue(scan_ctrl.check_finished(scan_id))
     with session_query() as session:
         scan = Scan.load(scan_id, session)
         self.assertEqual(scan.status, IrmaScanStatus.processed)
         self.assertEqual(scan.nb_files, 10)
         self.assertEqual(scan.nb_jobs, 20)