Пример #1
0
 def test_loading_different_problem_types(self, block_type, filename):
     """
     Test that transformation works for various block types
     """
     metadata = self.default_problem_metadata.copy()
     if block_type == u'library_content':
         # Library content does not have a weight
         del metadata[u'weight']
     add_xml_block_from_file(block_type, filename, parent=self.vert1, metadata=metadata)
Пример #2
0
 def test_loading_different_problem_types(self, block_type, filename):
     """
     Test that transformation works for various block types
     """
     metadata = self.default_problem_metadata.copy()
     if block_type == u'library_content':
         # Library content does not have a weight
         del metadata[u'weight']
     add_xml_block_from_file(block_type, filename, parent=self.vert1, metadata=metadata)
Пример #3
0
    def test_score_submission_for_capa_problems(self):
        add_xml_block_from_file(u'problem', u'capa.xml', parent=self.vert1, metadata=self.default_problem_metadata)
        course_structure = get_course_blocks(self.student, self.course.location)

        score = self._get_fresh_subsection_score(course_structure, self.seq1)
        self.assertEqual(score.all_total.earned, 0.0)
        self.assertEqual(score.all_total.possible, 2.5)

        self.submit_question_answer(u'problem', {u'2_1': u'Correct'})
        score = self._get_fresh_subsection_score(course_structure, self.seq1)
        self.assertEqual(score.all_total.earned, 1.25)
        self.assertEqual(score.all_total.possible, 2.5)
Пример #4
0
    def _get_score_with_alterations(self, alterations):
        """
        Given a dict of alterations to the default_problem_metadata, return
        the score when one correct problem (out of two) is submitted.
        """
        metadata = self._get_altered_metadata(alterations)

        add_xml_block_from_file(u'problem', u'capa.xml', parent=self.vert1, metadata=metadata)
        course_structure = get_course_blocks(self.student, self.course.location)

        self.submit_question_answer(u'problem', {u'2_1': u'Correct'})
        return self._get_fresh_subsection_score(course_structure, self.seq1)
Пример #5
0
    def test_score_submission_for_capa_problems(self):
        add_xml_block_from_file(u'problem', u'capa.xml', parent=self.vert1, metadata=self.default_problem_metadata)
        course_structure = get_course_blocks(self.student, self.course.location)

        score = self._get_fresh_subsection_score(course_structure, self.seq1)
        self.assertEqual(score.all_total.earned, 0.0)
        self.assertEqual(score.all_total.possible, 2.5)

        self.submit_question_answer(u'problem', {u'2_1': u'Correct'})
        score = self._get_fresh_subsection_score(course_structure, self.seq1)
        self.assertEqual(score.all_total.earned, 1.25)
        self.assertEqual(score.all_total.possible, 2.5)
Пример #6
0
    def _get_score_with_alterations(self, alterations):
        """
        Given a dict of alterations to the default_problem_metadata, return
        the score when one correct problem (out of two) is submitted.
        """
        metadata = self._get_altered_metadata(alterations)

        add_xml_block_from_file(u'problem', u'capa.xml', parent=self.vert1, metadata=metadata)
        course_structure = get_course_blocks(self.student, self.course.location)

        self.submit_question_answer(u'problem', {u'2_1': u'Correct'})
        return self._get_fresh_subsection_score(course_structure, self.seq1)