def test_that_sections_are_reordered_after_save(self): section_form = SectionForm(instance=self.section3, data=self.form_data, initial={'questionnaire': self.questionnaire.id}) section_form.save() self.assertEqual(1, self.section3.order) self.assertEqual(2, Section.objects.get(id=self.section1.id).order) self.assertEqual(3, Section.objects.get(id=self.section2.id).order)
def test_valid_with_initial(self): initial = {'questionnaire': self.questionnaire.id, 'region': self.region, 'user': self.user} section_form = SectionForm(data=self.form_data, initial=initial) self.assertTrue(section_form.is_valid()) section = section_form.save() self.assertEqual(section.region, self.region) self.assertTrue(section.is_core)
def test_is_valid_when_user_is_regional_and_editing_none_core_section(self): questionnaire = QuestionnaireFactory() user = self.create_user(username='******', group=self.REGIONAL_ADMIN, org="WHO", region='AFR') section1 = SectionFactory(order=1, questionnaire=questionnaire, is_core=False, region=user.user_profile.region) initial = {'questionnaire': questionnaire.id, 'user': user} section_form = SectionForm(data=self.form_data, initial=initial, instance=section1) self.assertTrue(section_form.is_valid())
def test_is_invalid_when_user_is_regional_and_editing_core_section(self): questionnaire = QuestionnaireFactory() user = self.create_user(username='******', group=self.REGIONAL_ADMIN, org="WHO", region='AFR') section1 = SectionFactory(order=1, questionnaire=questionnaire, is_core=True, region=user.user_profile.region) initial = {'questionnaire': questionnaire.id, 'user': user} section_form = SectionForm(data=self.form_data, initial=initial, instance=section1) self.assertFalse(section_form.is_valid()) self.assertIn('You are not permitted to edit this section', section_form.errors['name'])
def test_that_a_new_section_created_get_max_order_plus_one(self): questionnaire = QuestionnaireFactory() section1 = SectionFactory(order=1, questionnaire=questionnaire) section2 = SectionFactory(order=2, questionnaire=questionnaire) section3 = SectionFactory(order=3, questionnaire=questionnaire) section4 = SectionFactory(order=4, questionnaire=questionnaire) section5 = SectionFactory(order=1, title='Not in the same questionnaire') form_data = self.form_data form_data['order'] = 3 form_data['questionnaire'] = questionnaire.id initial = {'questionnaire': questionnaire.id} section_form = SectionForm(data=form_data, initial=initial) saved_section = section_form.save() self.assertEqual(3, saved_section.order) self.assertEqual(1, Section.objects.get(id=section1.id).order) self.assertEqual(2, Section.objects.get(id=section2.id).order) self.assertEqual(4, Section.objects.get(id=section3.id).order) self.assertEqual(5, Section.objects.get(id=section4.id).order)
def get(self, request, *args, **kwargs): questionnaire = Questionnaire.objects.get( id=self.kwargs['questionnaire_id']) section = Section.objects.get(id=self.kwargs['section_id']) initial = { 'status': 'Draft', 'country': self.request.user.user_profile.country } required_answers = 'show' in request.GET formsets = QuestionnaireEntryFormService(section, initial=initial, highlight=required_answers) printable = 'printable' in request.GET preview = 'preview' in request.GET context = { 'questionnaire': questionnaire, 'section': section, 'printable': printable, 'preview': preview, 'formsets': formsets, 'ordered_sections': questionnaire.sections.order_by('order'), 'form': SectionForm(initial={'questionnaire': questionnaire}), 'action': reverse('new_section_page', args=(questionnaire.id, )), 'subsection_form': SubSectionForm(), 'subsection_action': reverse('new_subsection_page', args=(questionnaire.id, section.id)) } return self.render_to_response(context)
def test_valid_with_initial(self): section_form = SectionForm( data=self.form_data, initial={'questionnaire': self.questionnaire.id}) self.assertTrue(section_form.is_valid())
def test_valid(self): section_form = SectionForm( initial={'questionnaire': self.questionnaire.id}, data=self.form_data) self.assertTrue(section_form.is_valid())
def test_valid_with_initial(self): section_form = SectionForm(data=self.form_data, initial={'questionnaire': self.questionnaire.id}) self.assertTrue(section_form.is_valid())
def test_valid(self): section_form = SectionForm(initial={'questionnaire': self.questionnaire.id}, data=self.form_data) self.assertTrue(section_form.is_valid())