def test_create_instance_method_job(self): """Creation of jobs for instance methods.""" c = Calculator(2) job = Job.create(func=c.calculate, args=(3, 4)) # Job data is set self.assertEquals(job.func, c.calculate) self.assertEquals(job.instance, c) self.assertEquals(job.args, (3, 4))
def test_dequeue_instance_method(self): """Dequeueing instance method jobs from queues.""" q = Queue() c = Calculator(2) result = q.enqueue(c.calculate, 3, 4) job = q.dequeue() # The instance has been pickled and unpickled, so it is now a separate # object. Test for equality using each object's __dict__ instead. self.assertEquals(job.instance.__dict__, c.__dict__) self.assertEquals(job.func.__name__, 'calculate') self.assertEquals(job.args, (3, 4))