|
Moodle
2.2.1
http://www.collinsharper.com
|
00001 <?php 00002 00004 // // 00005 // NOTICE OF COPYRIGHT // 00006 // // 00007 // Moodle - Modular Object-Oriented Dynamic Learning Environment // 00008 // http://moodle.org // 00009 // // 00010 // Copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com // 00011 // // 00012 // This program is free software; you can redistribute it and/or modify // 00013 // it under the terms of the GNU General Public License as published by // 00014 // the Free Software Foundation; either version 2 of the License, or // 00015 // (at your option) any later version. // 00016 // // 00017 // This program is distributed in the hope that it will be useful, // 00018 // but WITHOUT ANY WARRANTY; without even the implied warranty of // 00019 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // 00020 // GNU General Public License for more details: // 00021 // // 00022 // http://www.gnu.org/copyleft/gpl.html // 00023 // // 00025 00034 if (!defined('MOODLE_INTERNAL')) { 00035 die('Direct access to this script is forbidden.'); 00036 } 00037 00038 require_once("$CFG->dirroot/repository/lib.php"); 00039 00040 // Generate a mock class for each plugin subclass present 00041 $repository_plugins = get_list_of_plugins('repository'); 00042 00043 foreach ($repository_plugins as $plugin) { 00044 require_once($CFG->dirroot . "/repository/$plugin/lib.php"); 00045 Mock::generatePartial("repository_$plugin", "partialmock_$plugin", array('send_package')); 00046 } 00047 00048 class repositorylib_test extends UnitTestCaseUsingDatabase { 00049 00050 public static $includecoverage = array('repository/lib.php'); 00051 00052 function setup() { 00053 parent::setup(); 00054 } 00055 00056 public function test_plugins() { 00057 $plugins = get_list_of_plugins('repository'); 00058 00059 foreach ($plugins as $plugin) { 00060 // Instantiate a fake plugin instance 00061 $plugin_class = "partialmock_$plugin"; 00062 $plugin = new $plugin_class($this); 00063 00064 // add common plugin tests here 00065 } 00066 } 00067 } 00068