def _create_bound_form_with_field_type(self, data_type, data=None): self.desired_fact.data_type = data_type self.desired_fact.save() cls = forms.make_survey_form_subclass(self.survey, self.content_type) if data: return cls(self.survey, self.subject, self.user, data={'code1': data}) else: return cls(self.survey, self.subject, self.user)
def test_will_not_create_unspecified_facts(self): self.desired_fact.required = False self.desired_fact.save() form_class = forms.make_survey_form_subclass(self.survey, self.content_type) form_class(self.survey, self.subject, self.user, data={'code1': ''}).save_valid() self.assertFalse(Fact.objects.filter( desired_fact=self.desired_fact).exists())
def test_non_required_facts(self): self.desired_fact.required = False self.desired_fact.save() form_class = forms.make_survey_form_subclass(self.survey, self.content_type) self.assertTrue( form_class(self.survey, self.subject, self.user, data={}).is_valid())
def test_will_not_create_unspecified_facts(self): self.desired_fact.required = False self.desired_fact.save() form_class = forms.make_survey_form_subclass(self.survey, self.content_type) form_class(self.survey, self.subject, self.user, data={ 'code1': '' }).save_valid() self.assertFalse( Fact.objects.filter(desired_fact=self.desired_fact).exists())
def test_save_valid_multiple_choice(self): self.desired_fact.data_type = 'M' self.desired_fact.save() FactOption.objects.create(desired_fact=self.desired_fact, code='01', description='1') FactOption.objects.create(desired_fact=self.desired_fact, code='02', description='2') cls = forms.make_survey_form_subclass(self.survey, self.content_type) post_data = MultiValueDict() post_data.appendlist('code1', '01') post_data.appendlist('code1', '02') cls(self.survey, self.subject, self.user, data=post_data).save_valid() self.assertTrue(Fact.objects.filter( desired_fact=self.desired_fact, data='01').exists()) self.assertTrue(Fact.objects.filter( desired_fact=self.desired_fact, data='02').exists())
def test_save_valid_multiple_choice(self): self.desired_fact.data_type = 'M' self.desired_fact.save() FactOption.objects.create(desired_fact=self.desired_fact, code='01', description='1') FactOption.objects.create(desired_fact=self.desired_fact, code='02', description='2') cls = forms.make_survey_form_subclass(self.survey, self.content_type) post_data = MultiValueDict() post_data.appendlist('code1', '01') post_data.appendlist('code1', '02') cls(self.survey, self.subject, self.user, data=post_data).save_valid() self.assertTrue( Fact.objects.filter(desired_fact=self.desired_fact, data='01').exists()) self.assertTrue( Fact.objects.filter(desired_fact=self.desired_fact, data='02').exists())
def get_form_class(self): return forms.make_survey_form_subclass(self.survey, self.content_type)
def test_required_facts(self): form_class = forms.make_survey_form_subclass(self.survey, self.content_type) form = form_class(self.survey, self.subject, self.user, data={}) self.assertFalse(form.is_valid())
def test_create_fact_from_form(self): cls = forms.make_survey_form_subclass(self.survey, self.content_type) form = cls(self.survey, self.subject, self.user, data={'code1': 'a'}) form.save_valid() self.assertEquals(self.subject, Fact.objects.get(data='a').subject)
def test_non_required_facts(self): self.desired_fact.required = False self.desired_fact.save() form_class = forms.make_survey_form_subclass(self.survey, self.content_type) self.assertTrue(form_class(self.survey, self.subject, self.user, data={}).is_valid())