Merge branch 'MDL-59243-master' of git://github.com/jleyva/moodle

This commit is contained in:
Eloy Lafuente (stronk7)
2017-09-13 12:09:52 +02:00
2 changed files with 14 additions and 7 deletions
+11 -6
View File
@@ -508,14 +508,18 @@ class mod_workshop_external extends external_api {
'message' => s($message)
);
}
return array(
'status' => false,
'warnings' => $warnings
);
} else {
$submission->id = $workshop->edit_submission($submission);
return array(
'status' => true,
'submissionid' => $submission->id,
'warnings' => $warnings
);
}
return array(
'submissionid' => $submission->id,
'warnings' => $warnings
);
}
/**
@@ -526,7 +530,8 @@ class mod_workshop_external extends external_api {
*/
public static function add_submission_returns() {
return new external_single_structure(array(
'submissionid' => new external_value(PARAM_INT, 'New workshop submission id (0 if it wasn\'t created).'),
'status' => new external_value(PARAM_BOOL, 'True if the submission was created false otherwise.'),
'submissionid' => new external_value(PARAM_INT, 'New workshop submission id.', VALUE_OPTIONAL),
'warnings' => new external_warnings()
));
}
+3 -1
View File
@@ -461,6 +461,7 @@ class mod_workshop_external_testcase extends externallib_advanced_testcase {
// Check submission created.
$submission = $workshop->get_submission_by_author($this->student->id);
$this->assertTrue($result['status']);
$this->assertEquals($result['submissionid'], $submission->id);
$this->assertEquals($title, $submission->title);
$this->assertEquals($content, $submission->content);
@@ -527,7 +528,8 @@ class mod_workshop_external_testcase extends externallib_advanced_testcase {
// Try to create it again.
$result = mod_workshop_external::add_submission($this->workshop->id, 'My submission');
$result = external_api::clean_returnvalue(mod_workshop_external::add_submission_returns(), $result);
$this->assertEquals(0, $result['submissionid']);
$this->assertFalse($result['status']);
$this->assertArrayNotHasKey('submissionid', $result);
$this->assertCount(2, $result['warnings']);
$this->assertEquals('fielderror', $result['warnings'][0]['warningcode']);
$this->assertEquals('content_editor', $result['warnings'][0]['item']);