From 12581d591428307d9fbc3d61e4d91325440387b8 Mon Sep 17 00:00:00 2001 From: Christopher Bohn <bohn@unl.edu> Date: Fri, 7 Jan 2022 10:10:11 -0600 Subject: [PATCH] Catches ValueError reported in #1 -- now results in "no stats" --- README.md | 2 ++ api/canvas_classes.py | 7 +++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 1426e0c..379843c 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,8 @@ To interface with Canvas, you need a Canvas API Key.  +- [ ] Override the default file permissions: `chmod 600 ~/.abet_oat.json` + ### You no longer need to... You no longer need to manually retrieve students' majors from MyRed. The program diff --git a/api/canvas_classes.py b/api/canvas_classes.py index 83deb5b..a9ec324 100644 --- a/api/canvas_classes.py +++ b/api/canvas_classes.py @@ -518,9 +518,12 @@ class CanvasAssignment: def is_quiz(self) -> bool: return 'online_quiz' in self.canvas_assignment.submission_types - def get_score(self, canvas_user: CanvasUser) -> float: # TODO: add get_score and get_points_possible to original + def get_score(self, canvas_user: CanvasUser) -> Optional[float]: # TODO: add get_score & get_points_possible to original submission: Submission = self.canvas_assignment.get_submission(canvas_user.get_canvas_id()) - return float(submission.grade) if submission.grade is not None else None + try: + return float(submission.grade) if submission.grade is not None else None + except ValueError: + return None def get_points_possible(self) -> float: return self.canvas_assignment.points_possible -- GitLab