Ejemplo n.º 1
0
 def test_other_answer_methods(self):
     interviews = self._prep_answers()
     m_answer = MultiChoiceAnswer.objects.last()
     self.assertEqual(m_answer.pretty_print(as_label=False),
                      m_answer.value.text)
     self.assertEqual(m_answer.pretty_print(as_label=True),
                      m_answer.value.order)
     multiselect_question = Question.objects.filter(
         answer_type=MultiSelectAnswer.choice_name()).last()
     MultiSelectAnswer.create(self.interview, multiselect_question, 'Y N')
     self.assertEqual(MultiSelectAnswer.objects.count(), 1)
     multiselect = MultiSelectAnswer.objects.last()
     self.assertEqual(multiselect.to_text(), ' and '.join(['Y', 'N']))
     self.assertEqual(multiselect.to_label(), ' and '.join(['1', '2']))
     self.assertEqual(multiselect.pretty_print(as_label=False),
                      multiselect.to_text())
     self.assertEqual(multiselect.pretty_print(as_label=True),
                      multiselect.to_label())
Ejemplo n.º 2
0
 def test_update_multiselect_answer(self):
     qset = self.qset
     self._create_test_non_group_questions(qset)
     multiselect_question = Question.objects.filter(answer_type=MultiSelectAnswer.choice_name()).first()
     options = multiselect_question.options.all()
     raw_answer = ' '.join([options.first().text, options.last().text])
     MultiSelectAnswer.create(self.interview, multiselect_question, raw_answer)
     self.assertEquals(MultiSelectAnswer.objects.count(), 1)
     multichoice_answer = MultiSelectAnswer.objects.first()
     self.assertEquals(multichoice_answer.as_text, raw_answer)
     self.assertEquals(multichoice_answer.as_value, raw_answer)
     # not save all options as queryset
     MultiSelectAnswer.create(self.interview, multiselect_question, multiselect_question.options.all())
     self.assertEquals(MultiSelectAnswer.objects.count(), 2)
     multichoice_answer = MultiSelectAnswer.objects.last()
     self.assertEquals(multichoice_answer.as_text,
                       ' '.join(multiselect_question.options.values_list('text', flat=True)))
     self.assertEquals(multichoice_answer.as_value,
                       ' '.join(multiselect_question.options.values_list('text', flat=True)))
 def test_update_multiselect_answer(self):
     qset = self.qset
     self._create_test_non_group_questions(qset)
     multiselect_question = Question.objects.filter(
         answer_type=MultiSelectAnswer.choice_name()).first()
     options = multiselect_question.options.all()
     raw_answer = ' '.join([options.first().text, options.last().text])
     MultiSelectAnswer.create(self.interview, multiselect_question,
                              raw_answer)
     self.assertEquals(MultiSelectAnswer.objects.count(), 1)
     multichoice_answer = MultiSelectAnswer.objects.first()
     self.assertEquals(multichoice_answer.as_text, raw_answer)
     self.assertEquals(multichoice_answer.as_value, raw_answer)
     # not save all options as queryset
     MultiSelectAnswer.create(self.interview, multiselect_question,
                              multiselect_question.options.all())
     self.assertEquals(MultiSelectAnswer.objects.count(), 2)
     multichoice_answer = MultiSelectAnswer.objects.last()
     self.assertEquals(
         multichoice_answer.as_text, ' '.join(
             multiselect_question.options.values_list('text', flat=True)))
     self.assertEquals(
         multichoice_answer.as_value, ' '.join(
             multiselect_question.options.values_list('text', flat=True)))