Пример #1
0
	def test_add_job(self):
		"""
		Test the method addJob, adding a simple Job which increase the
		input value by one.
		"""
		jm = JobManager()
		job = Job(increase, (1,))
		job.user = 1
		jm.addJob(job)
		self.assertEqual(1, len(jm.getJobs('QUEUED', 1)))
Пример #2
0
	def test_add_job(self):
		"""
		Test the method addJob, adding a simple Job which increase the
		input value by one.
		The job is not executed but only added to the execution queue.
		"""
		jm = JobManager()
		job = Job(increase, (1,))
		job.user = 1
		jm.addJob(job)
		self.assertEqual(1, len(jm.getJobs('QUEUED', 1)))
Пример #3
0
	def test_failed_job(self):
		"""
		Test used to check if the job manager detect and handle
		correctely an exeception during job execution.
		"""
		jm = JobManager()
		job1 = Job(increase, (2,))
		job1.user = 1
		job2 = Job(bad_division, (2,))
		job2.user = 1
		jm.addJob(job1)
		jm.addJob(job2)
		
		jm.start()
		sleep(2)
		jm.stop()

		
		if(len(jm.getJobs('FAILED', 1)) != 1 or len(jm.getJobs('COMPLETED', 1)) != 1):
			self.assertTrue(False)
Пример #4
0
	def test_user(self):
		"""
		Test used to retrieve all jobs of a given user.
		"""
		jm = JobManager()
		jm.start()
		job1 = Job(increase, (2,))
		job1.user = 1
		jm.addJob(job1)

		sleep(2)
		self.assertEqual(1, len(jm.getJobs('COMPLETED', 1)))
		jm.stop()
Пример #5
0
	def test_user2(self):
		"""
		Test used to retrieve all jobs of a user on many.
		"""
		jm = JobManager()
		jm.start()
		for i in range(3):
			job = Job(increase, (2+i,))
			job.user = i
			jm.addJob(job)

		sleep(2)
		self.assertEqual(1, len(jm.getJobs('COMPLETED', 1)))
		jm.stop()
Пример #6
0
	def test_job_execution3(self):
		"""
		Test used to check if the job manager detect and handle
		correctely an exception during job execution.
		"""
		jm = JobManager()
		jm.start()
		job = Job(bad_division, (2,))
		job.user = 1
		jm.addJob(job)

		sleep(2)
		self.assertEqual(1, len(jm.getJobs('FAILED', 1)))
		jm.stop()
Пример #7
0
	def test_user_clean(self):
		"""
		Test used to clean all completed jobs of a specific user.
		"""
		jm = JobManager()
		jm.start()
		for i in range(3):
			job = Job(increase, (2+i,))
			job.user = 1
			jm.addJob(job)
		
		sleep(6)
		jm.cleanJobs(1)
		self.assertEqual(0, len(jm.getJobs('COMPLETED', 1)))
		jm.stop()
Пример #8
0
	def test_job_get_all(self):
		"""
		Test used to check if the Job Manager is ablke to retrieve the
		correct Job object by its id.
		"""
		jm = JobManager()
		jm.start()
		for i in range(5):
			job = Job(increase, (2,))
			job.user = 1
			jm.addJob(job)
		
		sleep(5)
		self.assertEqual(5, len(jm.getJobs('COMPLETED', 1)))
		jm.stop()
Пример #9
0
	def test_user3(self):
		"""
		Test used to retrieve one job on many user's jobs.
		"""
		jm = JobManager()
		jm.start()
		for i in range(30):
			job = Job(increase, (2+i,))
			job.user = 1
			jm.addJob(job)
		
		job = Job(increase, (2,))
		job.user = 2
		jm.addJob(job)

		sleep(10)
		self.assertEqual(1, len(jm.getJobs('COMPLETED', 2)))
		jm.stop()