Exemple #1
0
    def test_grade_data_serializer__assessment(self, has_criteria):
        """Base serialization behavior, with and without criteria"""
        input_data = MagicMock()
        if has_criteria:
            input_data.criteria = [Mock(points=123), Mock(points=11), Mock(points=22)]
        data = GradeDataSerializer(input_data).data

        expected_value = {
            "score": ScoreField().to_representation(input_data.score),
            "overallFeedback": str(input_data.feedback),
        }
        if has_criteria:
            expected_value["criteria"] = [
                AssessmentCriteriaSerializer(criterion).data
                for criterion in input_data.criteria
            ]
        else:
            expected_value["criteria"] = []
        assert data == expected_value
 def test_field(self):
     """Base serialization behavior for ScoreField"""
     data = {"pointsEarned": 20, "pointsPossible": 40}
     representation = ScoreField().to_representation(data)
     assert representation == data
    def test_field_missing(self, missing_field):
        """Missing fields should just be ignored"""
        value = {"pointsEarned": 30, "pointsPossible": 50}
        del value[missing_field]

        assert ScoreField().to_representation(value) == value
 def test_field_no_values(self):
     """An empty dict passed to the field should return None"""
     assert ScoreField().to_representation({}) is None