def test_jobs_execution(self): """ Test used to check if a Job Manager is able to execute multiple jobs. """ # creating and starting a job manager jm = JobManager() jm.start() # creating and adding many jobs to the manager num_jobs = 9 for i in range(num_jobs): job = Job(increase, (2,)) job.user = 1 jm.addJob(job) sleep(num_jobs + 1) # checking if all jobs has been completed if(len(jm.getAllJobs(1)["COMPLETED"]) != num_jobs): self.assertTrue(False) # checking if jobs results are correct for job_id in jm.getAllJobs(1)["COMPLETED"]: job = jm.getJob(job_id, 1) if(job.result != 3): self.assertTrue(False) # stopping job manager jm.stop()
def test_job_get2(self): """ Test used to check if the Job Manager is ablke to retrieve the correct Job object by its id. """ jm = JobManager() jm.start() job = Job(increase, (2,)) job.user = 1 job_id = jm.addJob(job) sleep(2) self.assertEqual(job_id, jm.getJob(job_id, job.user).id) jm.stop()
def test_user_get(self): """ Test used to retrieve one job on many user's jobs. """ jm = JobManager() jm.start() job = None for i in range(10): job = Job(increase, (2+i,)) job.user = 1 jm.addJob(job) sleep(2) self.assertTrue(jm.getJob(job.id, 1)) jm.stop()
def test_job_clean2(self): """ Test used to cancel the execution of a job by its id. A sample job is runned and then stopped. """ jm = JobManager() jm.start() job = Job(increase, (2,)) job.user = 1 jm.addJob(job) jm.cleanJobs(job.user) sleep(2) self.assertEqual('COMPLETED', jm.getJob(job.id, job.user).status) jm.stop()
def test_job_abort2(self): """ Test used to cancel the execution of a job by its id. A sample job is runned and then stopped. """ jm = JobManager() jm.start() job = Job(increase, (2,)) job.user = 1 jm.addJob(job) jm.abortJob(job.id, job.user) job = jm.getJob(job.id, job.user) self.assertEqual('ABORTED', job.status) jm.stop()
def test_job_clean(self): """ Test used to remove completed or aborted jobs from the Job Manager queues. A sample job is runned, waited and the cleaned. """ jm = JobManager() jm.start() job = Job(increase, (2,)) job.user = 1 jm.addJob(job) sleep(2) jm.cleanJobs(job.user) self.assertIsNone(jm.getJob(job.id, job.user)) jm.stop()
def ttest33333(self): """ Test used to check if a Job Manager is able to execute multiple jobs. """ # creating and starting a job manager jm = JobManager() jm.start() # creating and adding many jobs to the manager num_jobs = 10 for i in range(num_jobs): job = Job(increase, (2,)) job.user = 1 jm.addJob(job) for job in jm.getAllJobs(1)["QUEUED"]: job_id = job.id job2 = jm.getJob(job_id, 1) if(not job2): self.assertTrue(False) # stopping job manager jm.stop()