Skip to content

Commit

Permalink
Merge branch 'MDL-64444-36' of git://github.com/jleyva/moodle into MO…
Browse files Browse the repository at this point in the history
…ODLE_36_STABLE
  • Loading branch information
stronk7 committed Feb 28, 2019
2 parents e7bf974 + ff28d27 commit 0130945
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 3 deletions.
5 changes: 3 additions & 2 deletions mod/assign/externallib.php
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,8 @@ public static function get_grades($assignmentids, $since = 0) {
try {
$context = context_module::instance($cm->id);
self::validate_context($context);
require_capability('mod/assign:grade', $context);
$assign = new assign($context, null, null);
$assign->require_view_grades();
} catch (Exception $e) {
$requestedassignmentids = array_diff($requestedassignmentids, array($cm->instance));
$warning = array();
Expand Down Expand Up @@ -714,8 +715,8 @@ public static function get_submissions($assignmentids, $status = '', $since = 0,
try {
$context = context_module::instance($cm->id);
self::validate_context($context);
require_capability('mod/assign:grade', $context);
$assign = new assign($context, null, null);
$assign->require_view_grades();
$assigns[] = $assign;
} catch (Exception $e) {
$warnings[] = array(
Expand Down
13 changes: 12 additions & 1 deletion mod/assign/tests/externallib_test.php
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ public function test_get_grades() {
$context = context_course::instance($course->id);
$roleid = $this->assignUserCapability('moodle/course:viewparticipants', $context->id, 3);
$context = context_module::instance($assign->cmid);
$this->assignUserCapability('mod/assign:grade', $context->id, $roleid);
$this->assignUserCapability('mod/assign:viewgrades', $context->id, $roleid);

// Create the teacher's enrolment record.
$userenrolmentdata['status'] = 0;
Expand Down Expand Up @@ -434,6 +434,17 @@ public function test_get_submissions() {
$this->assertEquals($sid, $submission['id']);
$this->assertCount(1, $submission['plugins']);
$this->assertEquals('notgraded', $submission['gradingstatus']);

// Test locking the context.
set_config('contextlocking', 1);
$context = context_course::instance($course1->id);
$context->set_locked(true);

$this->setUser($teacher);
$assignmentids[] = $assign1->id;
$result = mod_assign_external::get_submissions($assignmentids);
$result = external_api::clean_returnvalue(mod_assign_external::get_submissions_returns(), $result);
$this->assertEquals(1, count($result['assignments']));
}

/**
Expand Down

0 comments on commit 0130945

Please sign in to comment.