コード例 #1
0
 def test_non_existing_question_is_invalid(self):
     non_existing_question_id = '999'
     data = {'questions': [non_existing_question_id, self.question1.id]}
     assign_question_form = AssignQuestionForm(data)
     self.assertFalse(assign_question_form.is_valid())
     error_message = 'Select a valid choice. 999 is not one of the available choices.'
     self.assertEqual([error_message],
                      assign_question_form.errors['questions'])
コード例 #2
0
 def test_create_groups_on_save_if_subsection_does_not_already_have_one(
         self):
     assign_question_form = AssignQuestionForm(self.form_data,
                                               subsection=self.subsection)
     self.assertTrue(assign_question_form.is_valid())
     assign_question_form.save()
     question_group = self.question1.question_group.all()
     self.assertEqual(1, question_group.count())
     self.assertEqual(question_group[0],
                      self.question2.question_group.all()[0])
     self.assertEqual(self.subsection, question_group[0].subsection)
コード例 #3
0
 def test_create_order_incrementally_on_save(self):
     assign_question_form = AssignQuestionForm(self.form_data,
                                               subsection=self.subsection)
     self.assertTrue(assign_question_form.is_valid())
     assign_question_form.save()
     question_group = self.question1.question_group.all()
     self.assertEqual(
         1,
         self.question1.orders.get(question_group=question_group[0]).order)
     self.assertEqual(
         2,
         self.question2.orders.get(question_group=question_group[0]).order)
コード例 #4
0
    def test_create_order_incrementally_on_save_when_there_is_already_a_question(
            self):
        already_existing_group = QuestionGroup.objects.create(
            subsection=self.subsection, order=1)
        question_with_order = Question.objects.create(text='Q w/ order',
                                                      UID='C00023',
                                                      answer_type='Number')
        some_arbitrary_order = 50
        question_with_order.orders.create(
            question_group=already_existing_group, order=some_arbitrary_order)

        assign_question_form = AssignQuestionForm(self.form_data,
                                                  subsection=self.subsection)
        self.assertTrue(assign_question_form.is_valid())
        assign_question_form.save()
        question_group = self.question1.question_group.all()
        self.assertEqual(
            some_arbitrary_order + 1,
            self.question1.orders.get(question_group=question_group[0]).order)
        self.assertEqual(
            some_arbitrary_order + 2,
            self.question2.orders.get(question_group=question_group[0]).order)
コード例 #5
0
 def test_valid(self):
     assign_question_form = AssignQuestionForm(self.form_data)
     self.assertTrue(assign_question_form.is_valid())