From: jerome Date: Mon, 9 Mar 2009 04:49:50 +0000 (+0000) Subject: web service MDL-12886 if the groupid doesn't exist, groups_remove_member and groups_a... X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=9c000a991f121dd7ea3344ccbf5924bfd9c3d746;p=moodle.git web service MDL-12886 if the groupid doesn't exist, groups_remove_member and groups_add_member return now exception (not a boolean as before) --- diff --git a/admin/uploaduser.php b/admin/uploaduser.php index 851edd4656..67516cc8a7 100755 --- a/admin/uploaduser.php +++ b/admin/uploaduser.php @@ -686,9 +686,11 @@ if ($formdata = $mform->is_cancelled()) { $gid = $ccache[$shortname]->groups[$addgroup]->id; $gname = $ccache[$shortname]->groups[$addgroup]->name; - if (groups_add_member($gid, $user->id)) { - $upt->track('enrolments', get_string('addedtogroup', '', $gname)); - } else { + try { + if (groups_add_member($gid, $user->id)) { + $upt->track('enrolments', get_string('addedtogroup', '', $gname)); + } + } catch (moodle_exception $e) { $upt->track('enrolments', get_string('addedtogroupnot', '', $gname), 'error'); continue; } diff --git a/group/lib.php b/group/lib.php index ce13188022..df320943fc 100644 --- a/group/lib.php +++ b/group/lib.php @@ -28,7 +28,7 @@ function groups_add_member($groupid, $userid) { } if (!groups_group_exists($groupid)) { - return false; + throw new moodle_exception('cannotaddmembergroupiddoesntexist'); } if (groups_is_member($groupid, $userid)) { @@ -68,7 +68,7 @@ function groups_remove_member($groupid, $userid) { } if (!groups_group_exists($groupid)) { - return false; + throw new moodle_exception('cannotaddmembergroupiddoesntexist'); } if (!groups_is_member($groupid, $userid)) { diff --git a/group/simpletest/testexternal.php b/group/simpletest/testexternal.php index 5697fbdd63..32f0aa1686 100644 --- a/group/simpletest/testexternal.php +++ b/group/simpletest/testexternal.php @@ -40,7 +40,7 @@ require_once($CFG->dirroot . '/group/external.php'); require_once(dirname(dirname(dirname(__FILE__))) . '/user/lib.php'); class group_external_test extends UnitTestCase { - /* +/* var $realDB; var $group; var $group2; @@ -201,8 +201,8 @@ class group_external_test extends UnitTestCase { function testTmp_add_group_members2() { //the group id doesn't exist $params = array(array("groupid" => 6465465, "userid" => $this->userid3), array("groupid" => $this->group->id, "userid" => $this->userid4)); + $this->expectException(new moodle_exception('cannotaddmembergroupiddoesntexist')); $result = group_external::tmp_add_groupmembers($params); - $this->assertEqual($result, false); } function testTmp_delete_group_members() { @@ -215,8 +215,8 @@ class group_external_test extends UnitTestCase { function testTmp_delete_group_members2() { //the group id doesn't exist $params = array(array("groupid" => 6465465, "userid" => $this->userid1), array("groupid" => $this->group->id, "userid" => $this->userid2)); + $this->expectException(new moodle_exception('cannotaddmembergroupiddoesntexist')); $result = group_external::tmp_delete_groupmembers($params); - $this->assertEqual($result, false); } function testTmp_delete_group_members3() {