Change completion API to work with any learning context
This commit is contained in:
@@ -477,7 +477,8 @@ def get_subsection_completion_percentage(subsection_usage_key, user):
|
||||
if not completable_blocks:
|
||||
return 100
|
||||
subsection_completion_total = 0
|
||||
course_block_completions = BlockCompletion.get_course_completions(user, subsection_usage_key.course_key)
|
||||
course_key = subsection_usage_key.course_key
|
||||
course_block_completions = BlockCompletion.get_learning_context_completions(user, course_key)
|
||||
for block in completable_blocks:
|
||||
if course_block_completions.get(block):
|
||||
subsection_completion_total += course_block_completions.get(block)
|
||||
|
||||
@@ -266,7 +266,7 @@ class TestGatingApi(ModuleStoreTestCase, MilestonesTestCaseMixin):
|
||||
category='html',
|
||||
display_name='some html block'
|
||||
)
|
||||
with patch.object(BlockCompletion, 'get_course_completions') as course_block_completions_mock:
|
||||
with patch.object(BlockCompletion, 'get_learning_context_completions') as course_block_completions_mock:
|
||||
course_block_completions_mock.return_value = {
|
||||
problem_block.location: user_problem_completion,
|
||||
html_block.location: user_html_completion,
|
||||
@@ -307,7 +307,7 @@ class TestGatingApi(ModuleStoreTestCase, MilestonesTestCaseMixin):
|
||||
display_name=u'{} block'.format(component_type)
|
||||
)
|
||||
|
||||
with patch.object(BlockCompletion, 'get_course_completions') as course_block_completions_mock:
|
||||
with patch.object(BlockCompletion, 'get_learning_context_completions') as course_block_completions_mock:
|
||||
course_block_completions_mock.return_value = {
|
||||
component.location: completed,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user