def testCreateEvaluationForHost(self): host = self.data.createHost() link_id = LinkIDProvider(ProjectSurvey).getValue() suffix = "%s/%s" % (self.gsoc.key().name(), link_id) # test student evaluation create/edit GET url = '/gsoc/eval/student/edit/' + suffix response = self.get(url) self.assertEvaluationCreateTemplateUsed(response) self.assertContains( response, 'Create new student evaluation') self.assertContains( response, '<input name="schema" type="hidden" id="schema" value="" />') self.assertEqual(response.context['page_name'], 'Create new student evaluation') self.assertEqual(response.context['post_url'], url) form = response.context['forms'][0] expected_fields = ['author', 'title', 'short_name', 'content', 'survey_start', 'survey_end', 'schema'].sort() actual_fields = form.fields.keys().sort() self.assertEqual(expected_fields, actual_fields) # TODO(Madhu): Get rid of scope and author fields once the data # conversion is done. override = { 'survey_content': None, 'author': host.key(), 'created_by': host.key(), 'program': self.gsoc.key(), 'modified_by': host.key(), 'schema': self.evaluation.evalSchemaString(), } response, _ = self.modelPost(url, ProjectSurvey, override) self.assertResponseRedirect(response, url+'?validated') eval = ProjectSurvey.all().get() response = self.get(url) self.assertEvaluationCreateTemplateUsed(response) self.assertContains( response, 'Edit - %s' % (eval.title,)) self.assertContains( response, '<input name="schema" type="hidden" id="schema" value=%s />' % (json.dumps(escape(eval.schema)),)) self.assertEqual(response.context['page_name'], 'Edit - %s' % (eval.title,)) self.assertEqual(response.context['post_url'], url) form = response.context['forms'][0] expected_fields = ['author', 'title', 'short_name', 'content', 'survey_start', 'survey_end', 'schema'].sort() actual_fields = form.fields.keys().sort() self.assertEqual(expected_fields, actual_fields)
def context(self): q = GradingProjectSurvey.all() q.filter('scope', self.data.program) mentor_surveys = q.fetch(1000) q = ProjectSurvey.all() q.filter('scope', self.data.program) student_surveys = q.fetch(1000) return { 'page_name': 'Sending Evaluation Reminders', 'mentor_surveys': mentor_surveys, 'student_surveys': student_surveys, 'msg': self.request.GET.get('msg', '') }
def context(self, data, check, mutator): q = GradingProjectSurvey.all() q.filter('scope', data.program) mentor_surveys = q.fetch(1000) q = ProjectSurvey.all() q.filter('scope', data.program) student_surveys = q.fetch(1000) return { 'page_name': 'Sending Evaluation Reminders', 'mentor_surveys': mentor_surveys, 'student_surveys': student_surveys, 'msg': data.request.GET.get('msg', '') }
def context(self, data, check, mutator): q = GradingProjectSurvey.all() q.filter("scope", data.program) mentor_surveys = q.fetch(1000) q = ProjectSurvey.all() q.filter("scope", data.program) student_surveys = q.fetch(1000) return { "page_name": "Sending Evaluation Reminders", "mentor_surveys": mentor_surveys, "student_surveys": student_surveys, "msg": data.request.GET.get("msg", ""), }