def testPostSendForReviewClosedTaskForbidden(self): """Tests for submitting work for a task whose status is Closed.""" user = profile_utils.seedNDBUser() profile_utils.loginNDB(user) student = profile_utils.seedNDBStudent(self.program, user=user) self.task.status = 'Closed' self.task.student = student.key.to_old_key() # set deadline to far future self.task.deadline = datetime.datetime.utcnow() + datetime.timedelta(days=1) self.task.put() task_utils.seedWorkSubmission(self.task) url = '%s?send_for_review' % _taskPageURL(self.task) response = self.post(url) self.assertResponseForbidden(response) task = task_model.GCITask.get(self.task.key()) self.assertEqual(task.status, 'Closed') self.assertBasicTaskView()
def testPostDeleteSubmission(self): """Tests for deleting work.""" user = profile_utils.seedNDBUser() profile_utils.loginNDB(user) student = profile_utils.seedNDBStudent(self.program, user=user) self.task.status = 'Claimed' self.task.student = student.key.to_old_key() self.task.put() work = task_utils.seedWorkSubmission(self.task) self.assertEqual(len(self.task.workSubmissions()), 1) url = '%s?delete_submission' % _taskPageURL(self.task) response = self.post(url, {work.key().id(): ''}) self.assertResponseRedirect(response) self.assertEqual(len(self.task.workSubmissions()), 0) self.assertBasicTaskView()