Merge branch 'w41_MDL-35839_m24_enroldeletecleanup' of git://github.com/skodak/moodle

This commit is contained in:
Aparup Banerjee
2012-10-10 10:29:33 +08:00
2 changed files with 23 additions and 2 deletions
+21
View File
@@ -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
View File
@@ -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