def test_submit_fatal_error(self, submit_method): submit_method.side_effect = SubmissionIssue("ERROR") submit.apply(args=[self.test_job.id]) self.test_job.refresh_from_db() self.assertEqual(self.test_job.failure, "ERROR")
def test_submit_temporary_error(self, submit_method, retry): exception = TemporarySubmissionIssue("TEMPORARY ERROR") retry.return_value = Retry() submit_method.side_effect = exception with self.assertRaises(Retry): submit.apply(args=[self.test_job.id]) retry.assert_called_with(exc=exception, countdown=3600) self.test_job.refresh_from_db() self.assertEqual(self.test_job.failure, "TEMPORARY ERROR")
def test_avoid_multiple_submissions(self, submit_method): self.test_job.submitted = True self.test_job.save() submit.apply(args=[self.test_job.id]) self.assertFalse(submit_method.called)
def test_submit(self, submit_method): submit.apply(args=[self.test_job.id]) submit_method.assert_called_with(self.test_job)