Merge branch 'MDL-38314-24' of git://github.com/FMCorz/moodle into MOODLE_24_STABLE

This commit is contained in:
Damyon Wiese
2013-07-08 16:40:39 +08:00
2 changed files with 25 additions and 19 deletions
-1
View File
@@ -1973,7 +1973,6 @@ abstract class repository {
$repo->convert_references_to_local();
}
}
cache::make('core', 'repositories')->purge();
$DB->delete_records_list('repository_instances', 'id', $repoids);
$DB->delete_records_list('repository_instance_config', 'instanceid', $repoids);
}
+25 -18
View File
@@ -294,27 +294,34 @@ class repositorylib_testcase extends advanced_testcase {
$this->setAdminUser();
$course = $this->getDataGenerator()->create_course();
$user = $this->getDataGenerator()->create_user();
$this->getDataGenerator()->create_repository_type('flickr_public');
$this->getDataGenerator()->create_repository_type('filesystem');
// Enable repositories.
$plugintype = new repository_type('flickr_public');
$plugintype->create(true);
$plugintype = new repository_type('filesystem');
$plugintype->create(true);
$coursecontext = context_course::instance($course->id);
$usercontext = context_user::instance($user->id);
$flickrparams = array('name' => 'Flickr Public');
$fsparams = array('name' => 'File System');
// Creating course instances.
$repo = $this->getDataGenerator()->create_repository('flickr_public', array('contextid' => $coursecontext->id));
$courserepo1 = repository::get_repository_by_id($repo->id, $coursecontext);
// Instance on a site level.
$repoid = repository::static_function('flickr_public', 'create', 'flickr_public', 0, $coursecontext, $flickrparams);
$courserepo1 = repository::get_repository_by_id($repoid, $coursecontext);
$this->assertEquals(1, $DB->count_records('repository_instances', array('contextid' => $coursecontext->id)));
$repo = $this->getDataGenerator()->create_repository('filesystem', array('contextid' => $coursecontext->id));
$courserepo2 = repository::get_repository_by_id($repo->id, $coursecontext);
$repoid = repository::static_function('filesystem', 'create', 'filesystem', 0, $coursecontext, $fsparams);
$courserepo2 = repository::get_repository_by_id($repoid, $coursecontext);
$this->assertEquals(2, $DB->count_records('repository_instances', array('contextid' => $coursecontext->id)));
// Creating user instances.
$repo = $this->getDataGenerator()->create_repository('flickr_public', array('contextid' => $usercontext->id));
$userrepo1 = repository::get_repository_by_id($repo->id, $usercontext);
$repoid = repository::static_function('flickr_public', 'create', 'flickr_public', 0, $usercontext, $flickrparams);
$userrepo1 = repository::get_repository_by_id($repoid, $usercontext);
$this->assertEquals(1, $DB->count_records('repository_instances', array('contextid' => $usercontext->id)));
$repo = $this->getDataGenerator()->create_repository('filesystem', array('contextid' => $usercontext->id));
$userrepo2 = repository::get_repository_by_id($repo->id, $usercontext);
$repoid = repository::static_function('filesystem', 'create', 'filesystem', 0, $usercontext, $fsparams);
$userrepo2 = repository::get_repository_by_id($repoid, $usercontext);
$this->assertEquals(2, $DB->count_records('repository_instances', array('contextid' => $usercontext->id)));
// Simulation of course deletion.
@@ -336,8 +343,8 @@ class repositorylib_testcase extends advanced_testcase {
// Checking deletion upon course context deletion.
$course = $this->getDataGenerator()->create_course();
$coursecontext = context_course::instance($course->id);
$repo = $this->getDataGenerator()->create_repository('flickr_public', array('contextid' => $coursecontext->id));
$courserepo = repository::get_repository_by_id($repo->id, $coursecontext);
$repoid = repository::static_function('flickr_public', 'create', 'flickr_public', 0, $coursecontext, $flickrparams);
$courserepo = repository::get_repository_by_id($repoid, $coursecontext);
$this->assertEquals(1, $DB->count_records('repository_instances', array('contextid' => $coursecontext->id)));
$coursecontext->delete();
$this->assertEquals(0, $DB->count_records('repository_instances', array('contextid' => $coursecontext->id)));
@@ -345,8 +352,8 @@ class repositorylib_testcase extends advanced_testcase {
// Checking deletion upon user context deletion.
$user = $this->getDataGenerator()->create_user();
$usercontext = context_user::instance($user->id);
$repo = $this->getDataGenerator()->create_repository('flickr_public', array('contextid' => $usercontext->id));
$userrepo = repository::get_repository_by_id($repo->id, $usercontext);
$repoid = repository::static_function('flickr_public', 'create', 'flickr_public', 0, $usercontext, $flickrparams);
$userrepo = repository::get_repository_by_id($repoid, $usercontext);
$this->assertEquals(1, $DB->count_records('repository_instances', array('contextid' => $usercontext->id)));
$usercontext->delete();
$this->assertEquals(0, $DB->count_records('repository_instances', array('contextid' => $usercontext->id)));
@@ -354,8 +361,8 @@ class repositorylib_testcase extends advanced_testcase {
// Checking deletion upon course deletion.
$course = $this->getDataGenerator()->create_course();
$coursecontext = context_course::instance($course->id);
$repo = $this->getDataGenerator()->create_repository('flickr_public', array('contextid' => $coursecontext->id));
$courserepo = repository::get_repository_by_id($repo->id, $coursecontext);
$repoid = repository::static_function('flickr_public', 'create', 'flickr_public', 0, $coursecontext, $flickrparams);
$courserepo = repository::get_repository_by_id($repoid, $coursecontext);
$this->assertEquals(1, $DB->count_records('repository_instances', array('contextid' => $coursecontext->id)));
delete_course($course, false);
$this->assertEquals(0, $DB->count_records('repository_instances', array('contextid' => $coursecontext->id)));
@@ -363,8 +370,8 @@ class repositorylib_testcase extends advanced_testcase {
// Checking deletion upon user deletion.
$user = $this->getDataGenerator()->create_user();
$usercontext = context_user::instance($user->id);
$repo = $this->getDataGenerator()->create_repository('flickr_public', array('contextid' => $usercontext->id));
$userrepo = repository::get_repository_by_id($repo->id, $usercontext);
$repoid = repository::static_function('flickr_public', 'create', 'flickr_public', 0, $usercontext, $flickrparams);
$userrepo = repository::get_repository_by_id($repoid, $usercontext);
$this->assertEquals(1, $DB->count_records('repository_instances', array('contextid' => $usercontext->id)));
delete_user($user);
$this->assertEquals(0, $DB->count_records('repository_instances', array('contextid' => $usercontext->id)));