def testCreateTaskDuringProgramForMentor(self): """Tests the task creation view during the program for org admin. """ self.timeline.tasksPubliclyVisible() profile_helper = GCIProfileHelper(self.gci, self.dev_test) profile_helper.createMentor(self.org) url = '/gci/task/create/' + self.org.key().name() response = self.get(url) self.assertResponseOK(response) self.assertFullEditTemplatesUsed(response)
def testCreateTaskBeforeOrgsAnnouncedForMentor(self): """Tests the task creation view before the program is public for org admin. """ self.timeline.orgSignup() profile_helper = GCIProfileHelper(self.gci, self.dev_test) profile_helper.createMentor(self.org) url = '/gci/task/create/' + self.org.key().name() response = self.get(url) # Task creation has not started yet self.assertResponseForbidden(response)
def testCreateTaskAfterClaimEndForMentor(self): """Tests the task creation view after the task claim deadline for mentor. """ self.timeline.taskClaimEnded() profile_helper = GCIProfileHelper(self.gci, self.dev_test) profile_helper.createMentor(self.org) url = '/gci/task/create/' + self.org.key().name() response = self.get(url) # Task creation has not started yet self.assertResponseForbidden(response)
def testPostClaimEditTaskDuringProgramForMentor(self): """Tests the task post claim editing view during the program for mentor. """ self.timeline.tasksPubliclyVisible() profile_helper = GCIProfileHelper(self.gci, self.dev_test) profile_helper.createMentor(self.org) task = self.createTask(status='NeedsReview') url = '/gci/task/edit/%s/%s' % (self.gci.key().name(), task.key().id()) response = self.get(url) self.assertResponseOK(response) self.assertPostClaimEditTemplatesUsed(response)
def testPostClaimEditTaskAfterClaimEndForMentor(self): """Tests the task post claim editing view after the task claim deadline for mentor. """ self.timeline.taskClaimEnded() task = self.createTask(status='Claimed') profile_helper = GCIProfileHelper(self.gci, self.dev_test) profile_helper.createMentor(self.org) url = '/gci/task/edit/%s/%s' % (self.gci.key().name(), task.key().id()) response = self.get(url) # Task post claim editing has not started yet self.assertResponseForbidden(response)
def testPostClaimEditTaskBeforeOrgsAnnouncedForMentor(self): """Tests the task post claim editing view before the program is public for mentor. """ self.timeline.orgSignup() profile_helper = GCIProfileHelper(self.gci, self.dev_test) profile_helper.createMentor(self.org) task = self.createTask(status='ActionNeeded') url = '/gci/task/edit/%s/%s' % (self.gci.key().name(), task.key().id()) response = self.get(url) # Task post claim editing has not started yet self.assertResponseForbidden(response)
def testOrgAppSurveyTakePage(self): """Tests organizationn application survey take/retake page. """ self.updateOrgAppSurvey() self.data.createOrgAdmin(self.org) backup_admin = GCIProfileHelper(self.gci, self.dev_test) backup_admin.createMentor(self.org) response = self.get(self.take_url) self.assertTemplatesUsed(response) params = { 'admin_id': self.data.user.link_id, 'backup_admin_id': backup_admin.user.link_id } params.update(self.post_params) response = self.post(self.take_url, params) query = OrgAppRecord.all() query.filter('main_admin = ', self.data.user) self.assertEqual(query.count(), 1, 'Survey record is not created.') record = query.get() self.assertEqual(record.org_id, self.post_params['org_id']) self.assertEqual(record.name, self.post_params['name']) self.assertEqual(record.description, self.post_params['description']) self.assertEqual(record.license, self.post_params['license']) self.assertEqual(record.main_admin.key(), self.data.user.key()) self.assertEqual(record.backup_admin.key(), backup_admin.user.key()) retake_url = self.retake_url_raw % (self.gci.key().name(), record.key().id()) self.assertResponseRedirect(response, retake_url + '?validated') response = self.get(retake_url) self.assertResponseOK(response) params = {'backup_admin_id': backup_admin.user.link_id} params.update(self.post_params) params['name'] = 'New title' response = self.post(retake_url, params) self.assertResponseRedirect(response, retake_url + '?validated') record = OrgAppRecord.get_by_id(record.key().id()) self.assertEqual(record.name, params['name'])
def testOrgAppSurveyTakePage(self): """Tests organizationn application survey take/retake page. """ self.updateOrgAppSurvey() self.data.createOrgAdmin(self.org) backup_admin = GCIProfileHelper(self.gci, self.dev_test) backup_admin.createMentor(self.org) response = self.get(self.take_url) self.assertTemplatesUsed(response) params = {'admin_id': self.data.user.link_id, 'backup_admin_id': backup_admin.user.link_id} params.update(self.post_params) response = self.post(self.take_url, params) query = OrgAppRecord.all() query.filter('main_admin = ', self.data.user) self.assertEqual(query.count(), 1, 'Survey record is not created.') record = query.get() self.assertEqual(record.org_id, self.post_params['org_id']) self.assertEqual(record.name, self.post_params['name']) self.assertEqual(record.description, self.post_params['description']) self.assertEqual(record.license, self.post_params['license']) self.assertEqual(record.main_admin.key(), self.data.user.key()) self.assertEqual(record.backup_admin.key(), backup_admin.user.key()) retake_url = self.retake_url_raw % (self.gci.key().name(), record.key().id()) self.assertResponseRedirect(response, retake_url + '?validated') response = self.get(retake_url) self.assertResponseOK(response) params = {'backup_admin_id': backup_admin.user.link_id} params.update(self.post_params) params['name'] = 'New title' response = self.post(retake_url, params) self.assertResponseRedirect(response, retake_url + '?validated') record = OrgAppRecord.get_by_id(record.key().id()) self.assertEqual(record.name, params['name'])