Merge branch 'w41_MDL-35839_m24_enroldeletecleanup' of git://github.com/skodak/moodle
This commit is contained in:
@@ -233,6 +233,27 @@ class enrol_cohort_testcase extends advanced_testcase {
|
||||
|
||||
cohort_remove_member($cohort1->id, $user1->id);
|
||||
$this->assertTrue(groups_is_member($group1->id, $user1->id));
|
||||
|
||||
|
||||
// Test deleting of instances.
|
||||
|
||||
cohort_add_member($cohort1->id, $user1->id);
|
||||
cohort_add_member($cohort1->id, $user2->id);
|
||||
cohort_add_member($cohort1->id, $user3->id);
|
||||
|
||||
$this->assertEquals(7, $DB->count_records('user_enrolments', array()));
|
||||
$this->assertEquals(5, $DB->count_records('role_assignments', array()));
|
||||
$this->assertEquals(3, $DB->count_records('role_assignments', array('component'=>'enrol_cohort', 'itemid'=>$cohortinstance1->id)));
|
||||
$this->assertEquals(5, $DB->count_records('groups_members', array()));
|
||||
$this->assertEquals(3, $DB->count_records('groups_members', array('component'=>'enrol_cohort', 'itemid'=>$cohortinstance1->id)));
|
||||
|
||||
$cohortplugin->delete_instance($cohortinstance1);
|
||||
|
||||
$this->assertEquals(4, $DB->count_records('user_enrolments', array()));
|
||||
$this->assertEquals(2, $DB->count_records('role_assignments', array()));
|
||||
$this->assertEquals(0, $DB->count_records('role_assignments', array('component'=>'enrol_cohort', 'itemid'=>$cohortinstance1->id)));
|
||||
$this->assertEquals(2, $DB->count_records('groups_members', array()));
|
||||
$this->assertEquals(0, $DB->count_records('groups_members', array('component'=>'enrol_cohort', 'itemid'=>$cohortinstance1->id)));
|
||||
}
|
||||
|
||||
public function test_sync_course() {
|
||||
|
||||
+2
-2
@@ -1627,8 +1627,8 @@ abstract class enrol_plugin {
|
||||
$participants->close();
|
||||
|
||||
// now clean up all remainders that were not removed correctly
|
||||
$DB->delete_records('groups_members', array('itemid'=>$instance->id, 'component'=>$name));
|
||||
$DB->delete_records('role_assignments', array('itemid'=>$instance->id, 'component'=>$name));
|
||||
$DB->delete_records('groups_members', array('itemid'=>$instance->id, 'component'=>'enrol_'.$name));
|
||||
$DB->delete_records('role_assignments', array('itemid'=>$instance->id, 'component'=>'enrol_'.$name));
|
||||
$DB->delete_records('user_enrolments', array('enrolid'=>$instance->id));
|
||||
|
||||
// finally drop the enrol row
|
||||
|
||||
Reference in New Issue
Block a user