Skip to content

Commit 107f100

Browse files
committed
Quiz now auto-saves after creating questions (ucfopen#681)
1 parent 45ba5ac commit 107f100

File tree

2 files changed

+22
-1
lines changed

2 files changed

+22
-1
lines changed

canvasapi/quiz.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ def create_question(self, **kwargs):
6868
response_json = response.json()
6969
response_json.update({"course_id": self.course_id})
7070

71+
self.edit(quiz={"published": getattr(self, "published", False)})
72+
7173
return QuizQuestion(self._requester, response_json)
7274

7375
def create_question_group(self, quiz_groups, **kwargs):

tests/test_quiz.py

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ def test_create_question_group_incorrect_dict(self, m):
149149

150150
# create_question()
151151
def test_create_question(self, m):
152-
register_uris({"quiz": ["create_question"]}, m)
152+
register_uris({"quiz": ["create_question", "edit"]}, m)
153153

154154
question_dict = {
155155
"question_name": "Pick Correct Answer",
@@ -165,6 +165,25 @@ def test_create_question(self, m):
165165
self.assertTrue(hasattr(question, "question_name"))
166166
self.assertEqual(question.question_name, question_dict["question_name"])
167167

168+
169+
def test_create_question_autosaves(self, m):
170+
register_uris({"quiz": ["create_question", "edit"]}, m)
171+
172+
question_dict = {
173+
"question_name": "Pick Correct Answer",
174+
"question_type": "multiple_choice_question",
175+
"question_text": "What is the right answer?",
176+
"points_possible": 10,
177+
"correct_comments": "That's correct!",
178+
"incorrect_comments": "That's wrong!",
179+
}
180+
181+
question = self.quiz.create_question(question=question_dict)
182+
183+
self.assertIsInstance(question, QuizQuestion)
184+
self.assertEqual(question.question_name, question_dict["question_name"])
185+
186+
168187
# get_question()
169188
def test_get_question(self, m):
170189
register_uris({"quiz": ["get_question"]}, m)

0 commit comments

Comments
 (0)