示例#1
0
    def get_multiple_submissions(self, **kwargs):
        """
        List submissions for multiple assignments.
        Get all existing submissions for a given set of students and assignments.

        :calls: `GET /api/v1/sections/:section_id/students/submissions \
        <https://canvas.instructure.com/doc/api/submissions.html#method.submissions_api.for_students>`_

        :rtype: :class:`canvasapi.paginated_list.PaginatedList` of
            :class:`canvasapi.submission.Submission`
        """
        is_grouped = kwargs.get("grouped", False)

        if normalize_bool(is_grouped, "grouped"):
            cls = GroupedSubmission
        else:
            cls = Submission

        return PaginatedList(
            cls,
            self._requester,
            "GET",
            "sections/{}/students/submissions".format(self.id),
            {"section_id": self.id},
            _kwargs=combine_kwargs(**kwargs),
        )
示例#2
0
    def test_normalize_bool_str_invalid(self, m):
        with self.assertRaises(ValueError) as cm:
            normalize_bool("invalid", "value")

        self.assertIn("Parameter `value` must", cm.exception.args[0])
示例#3
0
 def test_normalize_bool_str_lower(self, m):
     self.assertTrue(normalize_bool("true", "value"))
     self.assertFalse(normalize_bool("false", "value"))
示例#4
0
 def test_normalize_bool_str_upper(self, m):
     self.assertTrue(normalize_bool("True", "value"))
     self.assertFalse(normalize_bool("False", "value"))
示例#5
0
 def test_normalize_bool_boolean(self, m):
     self.assertTrue(normalize_bool(True, "value"))
     self.assertFalse(normalize_bool(False, "value"))